WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] potentially nasty oops on startup

On Sun, 5 Dec 2004, Rik van Riel wrote:

I'm getting the following oops on startup, and I'm not quite
sure why.  It looks nasty though, with an invalid page being
mapped into a process, and a strange looking EIP ...

do_wp_page: bogus page at address 00000449
VM: killing process kmodule
Unable to handle kernel NULL pointer dereference at virtual address 00000449

OK, figured it out.  It's kmodule, mmaping /dev/mem and
making vm86 calls.  Select fragments from a strace:

geteuid32()                             = 0
open("/dev/zero", O_RDONLY)             = 4
mmap2(0x10000, 65536, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 4, 
0) = 0x10000
open("/dev/mem", O_RDWR)                = 5
mmap2(NULL, 1282, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 5, 0) 
= 0
mmap2(0xa0000, 393216, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED, 5, 0xa0) = 
0xa0000
iopl(0x3)                               = 0
ioperm(0, 0x400, 0x1)                   = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c)                      = -1 ENOSYS (Function not implemented)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
vm86old(0x806b48c <unfinished ...>
+++ killed by SIGSEGV +++

Can't say I blame Xen for this.  Yuck.


--
"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it." - Brian W. Kernighan


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel

<Prev in Thread] Current Thread [Next in Thread>