Hello Bryce, > I'm updating to the latest fglrx and see that this patch no longer applies in > linux-restricted-modules-2.6.22, so am dropping it. > Thanks for your bug report - it confirmed that this patch is obsolete.
That's not quite what I meant to say. Sure, the latest fglrx (and 8.36.5 as well, iirc) supports the new 2.6.20 (or higher) APIs. But I guess you are not going to provide 2.6.22 for Feisty. My point is that the patch Ubuntu applied to fglrx-8.34.8 to make it work with kernel 2.6.20 (both of which are used in Feisty) is broken: - The patch provides old (== obsolete) #defines for the __syscall API to fglrx in firegl-public.c. - These #defines are taken from kernel 2.6.17 or 2.6.18. - The macro __syscall_return is one of these #defines. - __syscall_return checks whether an error condition is present by comparing the return value of the syscall to the maximum error value of the kernel - In the Ubuntu patch, the maximum error value is hard coded into the macro instead of using the kernel defined MAX_ERRNO. - This hard coded value the Ubuntu patch is using is the maximum error value for kernel 2.6.18 - But kernel 2.6.20 defines some more error conditions than kernel 2.6.18 - So the Ubuntu patch version of __syscall_return misses some error conditions (3 on my platform - X86_64) You might want to take a look at how 2.6.19 does it. The kernel #define MAX_ERRNO is used instead of plain values which does things just Right (TM) for every platform. As long as Feisty does not upgrade to fglrx 8.36.5 or higher, or as long as Ubuntu is not going to change its patch, this problem will still exist in Feisty. -- firegl_public.c: Ubuntu modification uses obsolete __syscall_return https://bugs.launchpad.net/bugs/101984 You received this bug notification because you are a member of Ubuntu Bugs, which is the bug contact for Ubuntu. -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
