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/
Home Products Support Community News


RE: [Xen-devel] Xen 4.0.0-rc7 problem/hang with vt-d DMAR parsing

To: Pasi Kärkkäinen <pasik@xxxxxx>
Subject: RE: [Xen-devel] Xen 4.0.0-rc7 problem/hang with vt-d DMAR parsing
From: "Cui, Dexuan" <dexuan.cui@xxxxxxxxx>
Date: Mon, 29 Mar 2010 14:48:00 +0800
Accept-language: zh-CN, en-US
Acceptlanguage: zh-CN, en-US
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, "Han, Weidong" <weidong.han@xxxxxxxxx>, Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Delivery-date: Sun, 28 Mar 2010 23:49:17 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20100326194503.GO1878@xxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20100323193748.GW1878@xxxxxxxxxxx> <C7CECCF9.E36E%keir.fraser@xxxxxxxxxxxxx> <20100323200515.GZ1878@xxxxxxxxxxx> <ED3036A092A28F4C91B0B4360DD128EABE03D6BC@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx> <20100326194503.GO1878@xxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcrNHNUtihkgXxZPRo2/a+bP+WV01QB7ib+g
Thread-topic: [Xen-devel] Xen 4.0.0-rc7 problem/hang with vt-d DMAR parsing
Pasi Kärkkäinen wrote:
> On Wed, Mar 24, 2010 at 09:52:45AM +0800, Cui, Dexuan wrote:
>> Pasi K?rkk?inen wrote:
>>> On Tue, Mar 23, 2010 at 07:54:33PM +0000, Keir Fraser wrote:
>>>> On 23/03/2010 19:37, "Pasi Kärkkäinen" <pasik@xxxxxx> wrote:
>>>>>> It's not impossible that the BIOS VT-d support is just broken (I
>>>>>> assume you've never tested VT-d on this particular type of system
>>>>>> before).
>>>>> Yeah, I've never used VT-d on this system earlier, so it could
>>>>> just be broken BIOS. I guess Xen still shouldn't hang on it?
>>>> We'd prefer to gracefully disable VT-d.
>>> 4.0.0-rc7 (without any extra cmdline options) does disable vt-d and
>>> boot ok, after 'hanging' for 30 seconds while parsing the DMAR
>>> tables. 
>>> If I add "iommu=verbose" option for Xen, then it'll print huge
>>> amount of stuff like I pasted earlier.. and it takes forever to
>>> print all that. 
>>> Hmm.. wondering if the patch Jan just sent will help with that.
>>> Sounds like it might help :)
>> I guess Jan's patch helps here in a very interesting way:
>> I suspect your BIOS doesn't construct the DMAR properly, e.g., in
>> acpi_parse_dmar(),  entry_header->length is always 0, so xen'll hang
>> in the while loop and continue printing the "dmaru->address = 0"
>> message when iommu=verbose. Without verbose message outputing, the
>> loop runs even faster and in acpi_parse_one_drhd(),  xmalloc(struct
>> acpi_drhd_unit) would NULL in a short periof of time and hence VT-d
>> is got disabled... :-)     
>> Please dump your DMAR table using the 'acpudump' utility in *native
>> Linux*: # wget
>> http://kernel.org/pub/linux/kernel/people/lenb/acpi/utils/pmtools-20100123.tar.gz
>> # tar zxf pmtools-20100123.tar.gz # cd pmtools-20100123/acpidump &&
>> make && ./acpidump --table DMAR -b > dmar.bin 
>> Please attach the dmar.bin so we can double check.
> Here it is (as an attachment).
> Xen 4.0.0-rc8 works properly now, meaning it disables VT-d immediately
> without delays.
> Motherboard: Supermicro X7SB4
> BIOS: v1.2a
> -- Pasi

With "iasl -d Supermicro-X7SB4-BIOS12a-dmar.bin", we can easily confirm the 
BIOS is broken.
Please check if there is newer BIOS available.

-- Dexuan
Xen-devel mailing list