From mboxrd@z Thu Jan 1 00:00:00 1970 From: George Dunlap Subject: Re: Crash during boot in Debian lenny default dom0 kernel (2.6.26-2-xen-686) Date: Thu, 25 Feb 2010 12:13:43 +0000 Message-ID: References: <25841307.20100224200810@eikelenboom.it> <20100224202009.GE2761@reaktio.net> <4B8665680200007800031406@vpn.id2.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Jan Beulich Cc: Sander Eikelenboom , Jeremy Fitzhardinge , Yunhong Jiang , "xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org (Jeremy: Discussing the default Lenny dom0 package, 2.6.26-2-xen--686 crashing during boot if MSIs are available.) Sure enough, the structure it's using looks like this: struct physdev_map_pirq { domid_t domid; /* IN */ int type; /* IN */ int index; /* IN or OUT */ int pirq; /* IN */ struct { int bus, devfn, entry_nr; int msi; /* 0 - MSIX 1 - MSI */ } msi_info; }; The code in question came from a patch called suse-20080808143035.patch; reading the numbers as the timestamp "2008 August 8" would seem to match up with the 3.3 dev lifecycle. Any suggestions for a simple fix I can try to push upstream? -George On Thu, Feb 25, 2010 at 11:46 AM, George Dunlap wrote: > I'm looking at the debian source package for this kernel to see if I > can sort out where it got the header from. > > Given that this is already in a major distribution, is there any way > we can fail gracefully if someone's running this kernel? =A0I'm not > familiar enough with the MSI to know if this is possible, or what a > good set of "sanity checks" would be for failing the hypercall. > > =A0-George > > On Thu, Feb 25, 2010 at 10:56 AM, Jan Beulich wrote= : >>>>> George Dunlap 25.02.10 11:48 >>> >>>Is it possible that there's actually a bug in the compat code, and >>>that table_base actually *was* set to (uint32_t)1? =A0If a reasonable >>>number for table_base is "1", giving it 64 bits in the structure would >>>seem a bit like overkill... >> >> "1" definitely is not a reasonable value here. And it's also not the >> compat code I'm sure - it is the kernel using a bad structure definition= . >> >> Jan >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >