The problem is here:
switch (sizeof(__ptr)) { // --> should be sizeof(*(__ptr))
case 4:
...
Recompiling..
Ralf Baechle 写道:
On Mon, Oct 01, 2007 at 11:11:17PM +0800, Fuxin Zhang wrote:
Sorry that it seems not work:
the kernel oops at sysfs_open_file->sysfs_get_active with unaligned
access(last seen exception on screen, no serial console by hand so it
may not be the first exception). It is probably caused by
"atomic_cmpxchg" there.
And keep the old kernel using new modules with patched cmpxchg also lead
to glxgears die(should be lock problem like before).
Can you look at the disassembly of the generated code? It should hopefully
be relativly obvious in the disassembly.
Ralf