I was having major wireless problems (kernel panics) with 2.6.30 and 2.6.31. They've all gone in 2.6.32 but as usual, it'll probably be ages before ATI catches up so I had a shot at fixing the driver myself. I was successful! Debian managed to take it as far as rc5 but a bit more work was needed for rc8.
The __cmpxchg_wrong_size stub satisfies an unresolved symbol. Don't worry about the fact that it's a stub, it's only called in cases where the previous kernels did nothing anyway.
Created attachment 211473 [details, diff]
Forgot to mention that the patch is not backwards-compatible so make it conditional on >=2.6.32.
Created attachment 212181 [details, diff]
Replace previous one for final 2.6.32
Patch which works with sys-kernel/gentoo-sources-2.6.32
Created attachment 212185 [details, diff]
Dirty ebuild which uses 2.6.32.patch
This ebuild works only for 2.6.32. Must be used with latest 2.6.32.patch. Other required files can be found in /usr/portage/x11-drivers/ati-drivers/files/
Thanks for the patch :).
I am curious as to why you say the ebuild is only for >=2.6.32. You can make it work for all kernel versions by enclosing the epatch line in the ebuild within a conditional check on kernel version like this:
if kernel_is ge 2 6 32; then
. Attaching the modified ebuild.
Created attachment 212206 [details]
same as above ebuild with a check for kernel 2.6.32 for applying patch.
Hmm I wonder why my git checkout of vanilla 2.6.32 had autoconf.h and utsrelease.h in include/generated while gentoo-sources still has them in include/linux.
ati-driver compile just fine thanks to your patch but I get corrupted pixels in the lower right corner of the KDE screen and system freezes on logout (even MagicKeys don't work anymore).
They haven't been there with kernel 2.6.31, and my kernel config is practically the same.
May this be related to the patch?
Even though it compiles now, that's no guarantee that it will actually work. It worked for me and a few others, it seems, but maybe not for everybody. I'm not a KDE user, maybe it's specific to that?
(In reply to comment #3)
> Created an attachment (id=212185) [details]
> Dirty ebuild which uses 2.6.32.patch
> This ebuild works only for 2.6.32. Must be used with latest 2.6.32.patch. Other
> required files can be found in /usr/portage/x11-drivers/ati-drivers/files/
If you put the 2.6.32 specific parts into
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,32)
you don't need to rely on the kernel-version in the ebuild. I didn't looked into the kernel source here, but I suspect this affects the cmpxchg part of the patch.
Thanks for reporting and thanks for the patch. I added a cleaned out version of it to the tree.
+ 15 Dec 2009; Fabio Erculiani <email@example.com> ati-drivers-9.11.ebuild,
+ make ati-drivers-9.11 compile with 2.6.32 kernel, close bug #294997