Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Oct 2010 07:28:25 +0000
From:      Bernhard Froehlich <decke@bluelife.at>
To:        Jung-uk Kim <jkim@FreeBSD.org>
Cc:        freebsd-acpi@FreeBSD.org, vbox@freebsd.org
Subject:   Re: VirtualBox: Compile problems with ACPICA 20101013
Message-ID:  <23edca762eb8c4fb6306a607d5935564@bluelife.at>
In-Reply-To: <201010191131.16732.jkim@FreeBSD.org>
References:  <fd8c8258b54aba029c87d979f4d61f26@bluelife.at> <201010181333.29143.jkim@FreeBSD.org> <08905cd48f28787b5b3d36a4e75fb793@bluelife.at> <201010191131.16732.jkim@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 19 Oct 2010 11:31:00 -0400, Jung-uk Kim <jkim@FreeBSD.org>
wrote:
> On Tuesday 19 October 2010 08:52 am, Bernhard Froehlich wrote:
>> On Mon, 18 Oct 2010 13:33:26 -0400, Jung-uk Kim <jkim@FreeBSD.org>
>>
>> wrote:
>> > On Monday 18 October 2010 05:44 am, Bernhard Froehlich wrote:
>> >> Hi guys!
>> >>
>> >> VirtualBox has a compile problem with latest acpica. I've talked
>> >> to the VirtualBox developers and they think it's an acpica
>> >> problem which should be fixed upstream. Can we somehow file a
>> >> bugreport or create a patch to fix that in acpica?
>> >
>> > Excerpt rom ACPI 4.0a:
>> >
>> > ---------------------------------------------------
>> > Each Compatible Device ID must be either:
>> >
>> > o A valid HID value (a 32-bit compressed EISA type ID or a string
>> > such as "ACPI0004").
>> > o A string that uses a bus-specific nomenclature.  For example,
>> > _CID can be used to specify the PCI ID.
>> > ---------------------------------------------------
>> >
>> > Since it is not a valid HID value, you can only say it may be a
>> > bus-specific nomenclature at best.  However, it looks like an ISA
>> > device to me and probably it is just a bogus ID.  In fact, I
>> > googled a bit and it only exists on some Intel Mac models, it
>> > seems.  You can just remove the entire _CID unless it is
>> > absolutely necessary, which is very unlikely. :-)
>>
>> It very much looks like a regression. Right beyond that sentences
>> they have a few examples in the ACPI 4.0a spec on page 201 that
>> won't pass that check. I haven't looked at all the code so probably
>> it's done somewhere completely different but if it is checked with
>> that code then it will complain.
>>
>> ACPI 4.0a spec on page 201:
>> ---------------------------------------------------
>> o A valid HID value (a 32-bit compressed EISA type ID or a string
>> such as "ACPI0004").
>> o A string that uses a bus-specific nomenclature.  For example,
>> _CID can be used to specify the PCI ID.
>>
>>   "PCI\CC_ccss"
>>   "PCI\CC_ccsspp"
>>   "PCI\VEN_vvvv&DEV_dddd&SUBSYS_ssssssss&REV_rr"
>>   ....
>> ---------------------------------------------------
>>
>> Now with a deeper look at the commit from acpica [1] especially the
>> second half. Before there was only an alphanumeric check for _HID
>> but with that change it was put into a new function AnCheckId()
>> that is called for both _HID and _CID and now wants both to be
>> alphanumeric. That looks correct for _HID but it's too strict for
>> _CID which is a string. Somewhere i've seen string is defined as a
>> null-terminated ASCII string and no word about alphanumeric.
>>
>> [1]
>> http://git.moblin.org/cgit.cgi/acpica/commit/?id=b66fd716e0b9b5389e
> 
> Yes, I am aware of the issue.  My point was _CID may be pointless for 
> *VirtualBox* and it can be removed.

I am just trying to figure out who is wrong and try to fix it there if
possible.

So do you agree that this is a acpica regression? Vbox guys say that
removing it is not a good idea because it will "break things" but I
don't know what it is used for so I cannot test it. 

-- 
Bernhard Froehlich
http://www.bluelife.at/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?23edca762eb8c4fb6306a607d5935564>