This patch fixes a very hard to debug crash (took me about 5 hours)
on an x86_64 kernel.
It might not crash on an i386 kernel, because of the looser memory
requirements. But in any case, it will access uninitialized memory.
On x86_64 this will cause a machine crash on kernel shutdown.
This is the oops that happens on an x86_64 kernel (without
stacktrace, because it will otherwise scroll off-screen):
http://bu3sch.de/misc/emc2-parport-crash.JPG
The patch is a backport of code from cvs-trunk. So trunk is not
affected by this issue. However, I suggest applying this to the next
release (2.2.7?), because poking with uninitialized kernel memory is no good.
This could even lead to crashes on i386, if somebody overwrites the memory
(the struct device_driver) before shutdown.
Index: emc2-2.2.6/src/hal/drivers/probe_parport.c
===================================================================
--- emc2-2.2.6.orig/src/hal/drivers/probe_parport.c 2008-11-07
10:58:39.000000000 +0100
+++ emc2-2.2.6/src/hal/drivers/probe_parport.c 2008-11-07 11:02:32.000000000
+0100
@@ -136,5 +136,7 @@
}
void rtapi_app_exit(void) {
+ if (pnp_registered_parport)
+ pnp_unregister_driver (&parport_pc_pnp_driver);
hal_exit(comp_id);
}
--
Greetings Michael.
Index: emc2-2.2.6/src/hal/drivers/probe_parport.c
===================================================================
--- emc2-2.2.6.orig/src/hal/drivers/probe_parport.c 2008-11-07 10:58:39.000000000 +0100
+++ emc2-2.2.6/src/hal/drivers/probe_parport.c 2008-11-07 11:02:32.000000000 +0100
@@ -136,5 +136,7 @@
}
void rtapi_app_exit(void) {
+ if (pnp_registered_parport)
+ pnp_unregister_driver (&parport_pc_pnp_driver);
hal_exit(comp_id);
}
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers