[Pkg-fglrx-devel] r372 - in fglrx-driver/trunk/debian: . patches

Patrick Matthäi pmatthaei at alioth.debian.org
Sun Feb 28 11:53:21 UTC 2010


Author: pmatthaei
Date: 2010-02-28 11:53:19 +0000 (Sun, 28 Feb 2010)
New Revision: 372

Added:
   fglrx-driver/trunk/debian/patches/05_fix_cmpxchg.diff
Modified:
   fglrx-driver/trunk/debian/changelog
   fglrx-driver/trunk/debian/patches/series
Log:
* Add patch 05_fix_cmpxchg.diff to build with Linux 2.6.33. Much thanks for
  this patch to Stefan B?\195?\188hler.
  Closes: #571272


Modified: fglrx-driver/trunk/debian/changelog
===================================================================
--- fglrx-driver/trunk/debian/changelog	2010-02-28 11:43:24 UTC (rev 371)
+++ fglrx-driver/trunk/debian/changelog	2010-02-28 11:53:19 UTC (rev 372)
@@ -2,8 +2,11 @@
 
   * Remove diversion of libdri.so.
     Closes: #571124
+  * Add patch 05_fix_cmpxchg.diff to build with Linux 2.6.33. Much thanks for
+    this patch to Stefan Bühler.
+    Closes: #571272
 
- -- Patrick Matthäi <pmatthaei at debian.org>  Tue, 23 Feb 2010 18:24:06 +0100
+ -- Patrick Matthäi <pmatthaei at debian.org>  Sun, 28 Feb 2010 12:52:15 +0100
 
 fglrx-driver (1:10-2-1) unstable; urgency=low
 

Added: fglrx-driver/trunk/debian/patches/05_fix_cmpxchg.diff
===================================================================
--- fglrx-driver/trunk/debian/patches/05_fix_cmpxchg.diff	                        (rev 0)
+++ fglrx-driver/trunk/debian/patches/05_fix_cmpxchg.diff	2010-02-28 11:53:19 UTC (rev 372)
@@ -0,0 +1,23 @@
+# Fix broken usage of internal macro; fixes compiling with 2.6.33
+
+diff -Naur fglrx-driver-10-2.orig/common/lib/modules/fglrx/build_mod/firegl_public.c fglrx-driver-10-2/common/lib/modules/fglrx/build_mod/firegl_public.c
+--- fglrx-driver-10-2.orig/common/lib/modules/fglrx/build_mod/firegl_public.c	2010-02-17 20:34:34.000000000 +0100
++++ fglrx-driver-10-2/common/lib/modules/fglrx/build_mod/firegl_public.c	2010-02-24 21:23:51.580872456 +0100
+@@ -1472,7 +1472,16 @@
+ #ifndef __HAVE_ARCH_CMPXCHG
+     return __fgl_cmpxchg(ptr,old,new,size);
+ #else
+-    return __cmpxchg(ptr,old,new,size);
++    switch (size) {
++    case 1: { volatile u8 *_ptr = ptr; return cmpxchg(_ptr, old, new); }
++    case 2: { volatile u16 *_ptr = ptr; return cmpxchg(_ptr, old, new); }
++    case 4: { volatile u32 *_ptr = ptr; return cmpxchg(_ptr, old, new); }
++#ifdef __x86_64__
++    case 8: { volatile u64 *_ptr = ptr; return cmpxchg(_ptr, old, new); }
++#endif
++    default:
++        return old;
++    }
+ #endif
+ }
+ 

Modified: fglrx-driver/trunk/debian/patches/series
===================================================================
--- fglrx-driver/trunk/debian/patches/series	2010-02-28 11:43:24 UTC (rev 371)
+++ fglrx-driver/trunk/debian/patches/series	2010-02-28 11:53:19 UTC (rev 372)
@@ -1,2 +1,3 @@
 01-CONFIG_X86_XEN.diff
 03-authatieventsd.sh.diff
+05_fix_cmpxchg.diff




More information about the Pkg-fglrx-devel mailing list