The xenU kernel in current -unstable tree seems to crash after bootup, having used just 0.1 seconds of CPU time: # xm create kernel=/tmp/vmlinuz Using config file "/etc/xen/xmdefconfig". Started domain TestDomain, console on port 9640 # xm list Name Id Mem(MB) CPU State Time(s) Console Domain-0 0 170 0 r---- 817.2 TestDomain 40 32 0 ----c 0.1 9640 This is with the xenU_defconfig from the xen bk tree, though the same crash has also been observed with the Fedora rawhide kernel. One place where the system crashes is at dmi scan time, because __ioremap() is a "return NULL" when CONFIG_XEN_PHYSDEV_ACCESS is not defined, which makes dmi_iterate''s memcpy follow a NULL pointer. The next xenU crash seems to be in parse_args - no idea what''s causing that, or why xen0 seems to be working fine ... --- arch/xen/i386/kernel/dmi_scan.c.orig 2005-01-12 14:55:14.000000000 -0500 +++ arch/xen/i386/kernel/dmi_scan.c 2005-01-12 16:06:27.000000000 -0500 @@ -105,6 +105,8 @@ char __iomem *p, *q; for (p = q = ioremap(0xF0000, 0x10000); q < p + 0x10000; q += 16) { + if (p == NULL) + return -1; memcpy_fromio(buf, q, 15); if(memcmp(buf, "_DMI_", 5)==0 && dmi_checksum(buf)) { ------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It''s fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel
> # xm create kernel=/tmp/vmlinuz > Using config file "/etc/xen/xmdefconfig". > Started domain TestDomain, console on port 9640 > # xm list > Name Id Mem(MB) CPU State Time(s) Console > Domain-0 0 170 0 r---- 817.2 > TestDomain 40 32 0 ----c 0.1 9640 > > This is with the xenU_defconfig from the xen bk tree, though > the same crash has also been observed with the Fedora rawhide > kernel.I can''t reproduce a crash with the vanilla unstable tree.> One place where the system crashes is at dmi scan time, because > __ioremap() is a "return NULL" when CONFIG_XEN_PHYSDEV_ACCESS is > not defined, which makes dmi_iterate''s memcpy follow a NULL > pointer.Which kernel is your patch against? The plain 2.6.10 dmi_scan.c only uses bt_ioremap() AFAICT, and it already checks the return value for NULL. -- Keir ------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It''s fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel
On Fri, 14 Jan 2005, Keir Fraser wrote:> I can''t reproduce a crash with the vanilla unstable tree.Interesting. I''ll try to debug things further.>> One place where the system crashes is at dmi scan time, because >> __ioremap() is a "return NULL" when CONFIG_XEN_PHYSDEV_ACCESS is >> not defined, which makes dmi_iterate''s memcpy follow a NULL >> pointer. > > Which kernel is your patch against? The plain 2.6.10 dmi_scan.c only > uses bt_ioremap() AFAICT, and it already checks the return value for > NULL.This is 2.6.11-rc1. -- "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 ------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It''s fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel
Rik, Do you think you could you get this fed upstream into the i386 version? Thanks, Ian> --- arch/xen/i386/kernel/dmi_scan.c.orig 2005-01-12 > 14:55:14.000000000 -0500 > +++ arch/xen/i386/kernel/dmi_scan.c 2005-01-12 > 16:06:27.000000000 -0500 > @@ -105,6 +105,8 @@ > char __iomem *p, *q; > > for (p = q = ioremap(0xF0000, 0x10000); q < p + > 0x10000; q += 16) { > + if (p == NULL) > + return -1; > memcpy_fromio(buf, q, 15); > if(memcmp(buf, "_DMI_", 5)==0 && dmi_checksum(buf)) > { > > > ------------------------------------------------------- > The SF.Net email is sponsored by: Beat the post-holiday blues > Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. > It''s fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/xen-devel >------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It''s fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel
On Fri, 14 Jan 2005, Ian Pratt wrote:> Do you think you could you get this fed upstream into the i386 version?Sure, I''ll send it on to lkml and akpm.>> +++ arch/xen/i386/kernel/dmi_scan.c 2005-01-12 >> 16:06:27.000000000 -0500 >> @@ -105,6 +105,8 @@ >> char __iomem *p, *q; >> >> for (p = q = ioremap(0xF0000, 0x10000); q < p + >> 0x10000; q += 16) { >> + if (p == NULL) >> + return -1;-- "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 ------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It''s fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel
On Thu, 13 Jan 2005, Rik van Riel wrote:> The next xenU crash seems to be in parse_args - no idea what''s > causing that, or why xen0 seems to be working fine ...This was fixed by upgrading to a newer xen hypervisor. -- "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 ------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It''s fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel