On 11/26/20 12:09, Michael S. Tsirkin wrote: > On Wed, Nov 25, 2020 at 09:13:22PM +0100, Antoine Damhet wrote: >> On Wed, Nov 25, 2020 at 11:04:55AM -0500, Michael S. Tsirkin wrote: >>> On Wed, Nov 25, 2020 at 01:32:51PM +0000, Richard W.M. Jones wrote: >>>> On Wed, Nov 25, 2020 at 02:27:11PM +0100, Antoine Damhet wrote: >>>>> Hello, >>>>> >>>>> We recently found out that some softwares are effectively crashing >>>>> when they detect qemu's `OEM ID` or `OEM table ID` in the ACPI tables. >>>>> >>>>> I see no reason not to expose the setting to the user/command-line. A >>>>> previous patch has been submitted in 2015[1] but did not get through >>>>> because (if I understand correctly) using the IDs on the `SLIC`, `BXPC` >>>>> and `RSDT` tables were enough at the time. >>>>> >>>>> If you agree, I am willing to forward port the patches of M. Jones but I >>>>> need to ask how it would work `Signed-Off`-wise ? >>>> >>>> On this point, the patch I sent was actually written by >>>> Michael Tokarev, I was only trying to get them upstream. >>>> >>>> Rich. >>> >>> I think at least one of the issues is that e.g. UEFI at least >>> seems to assume unique OEM table IDs e.g. for SSDTs. >>> >>> So let's try to be more specific please, which software >>> crashes, what does it want to see and in which table. >> >> I'm sorry I cannot give you the name of the crashing software due to a >> company policy. But I can tell you that if either `BOCHS ` or `BXPC` is >> present in any of the tables it will crash. Any (or at least the few >> that I threw at it) other string will work so it seems it's some kind >> of DRM-related hypervisor detection. > > Hmm I'm not sure how far we want to go with this. If software vendors > want to detect a hypervisor there will always be a way. > How are we sure we are not starting an arms race here? > > Also which of the IDs matter? OEMID? OEM Table ID? Creator ID? > > >> As for the uniqueness of the table IDs, I guess it would be sane to keep >> the same pattern (id+table sig) but allowing the first 4 bytes to be >> overridden. >> >> [...] > > It's certainly possible, it's just very specific to just this DRM scheme. > Not sure what's a better way to do it: > qemu -acpidefault oem_id=ABCD,oem_table_id=EFGHIJKL > is probably going too far since then table IDs are not unique. > > Also I'd probably use machine properties for this, the need here > is baroque enough that we don't want a dedicated option.
Minimally, I dislike the partial overlap with the existent "-acpitable" switch. Thanks Laszlo > >> >> -- >> Antoine 'xdbob' Damhet >