From: BlaisorBlade <bla...@ya...> - 2004-01-11 15:07:54
|
Alle 21:33, sabato 10 gennaio 2004, Johannes Formann ha scritto: > At 20:25 Uhr +0100 07.01.2004, BlaisorBlade wrote: > >The fix maybe is not perfect but something must go in. Also, if that > > doesn't work, maybe the error is somewhere else (and triggered by this > > change, as easily happens). > > Has anyone found an workaround to get modules working with 23-1? Why do you say "modules"? I.e. do you get that problem in a special situation, like Jeff Chua that sees it only when he uses LVM? Does your UML uses an initrd to load some modules? > For the Simpel Patch doesn't work, and I think Jeff has change a few > things more in mem.c between 22-5 and 23-1. Jeff Chua posted 2 patches. The second was shorter BUT I'm *at all* sure it cannot do anything (by having read and understood it). I think you should apply his first change, or, as a workaround, disable klogd from inside UML or remove /dev/kmem. Your guest will work anyway (and inserting the proper fix will require more time). Also, on my systems, inside UML, klogd doesn't use /dev/kmem. --- linux/drivers/char/mem.c Wed Jan 7 02:58:37 2004 +++ uml/drivers/char/mem.c Wed Jan 7 03:07:52 2004 @@ -210,3 +210,2 @@ char * kbuf; /* k-addr because vread() takes vmlist_lock rwlock */ - p = (unsigned long) __va(p); if (p < (unsigned long) high_memory) { @@ -269,3 +269,3 @@ } - *ppos = __pa((void *) p); + *ppos = p; return virtr + read; Also, I've posted below (in this thread) a message which explains what is the bug (search for "[tracked down]" in the subject). So the debug work should be complete. The problem is that properly fixing it is maybe hard. -- cat <<EOSIGN Paolo Giarrusso, aka Blaisorblade Linux Kernel 2.4.23/2.6.0 on an i686; Linux registered user n. 292729 EOSIGN |