lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 21 Oct 2021 18:46:25 +0900
From:   Tsuchiya Yuto <kitakar@...il.com>
To:     Hans de Goede <hdegoede@...hat.com>
Cc:     Patrik Gfeller <patrik.gfeller@...il.com>,
        Mauro Carvalho Chehab <mchehab@...nel.org>,
        Sakari Ailus <sakari.ailus@...ux.intel.com>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Aniket Bhattacharyea <aniketmail669@...il.com>,
        Aline Santana Cordeiro <alinesantanacordeiro@...il.com>,
        Yang Yingliang <yangyingliang@...wei.com>,
        Hans Verkuil <hverkuil-cisco@...all.nl>,
        Alan <alan@...ux.intel.com>,
        Dinghao Liu <dinghao.liu@....edu.cn>,
        linux-media@...r.kernel.org, linux-staging@...ts.linux.dev,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH 16/17] [NOT-FOR-MERGE] media: atomsip: pci: add DMI
 match for Microsoft Surface 3 with broken DMI (OEMB)

On Mon, 2021-10-18 at 09:56 +0200, Hans de Goede wrote:
> Hi,
> 
> On 10/17/21 18:19, Tsuchiya Yuto wrote:
> > This commit is added for Surface 3 with broken DMI table. HACK-ish.
> > Not intended for upstreaming. Thus, NOT-FOR-MERGE. But, if someone
> > knows a nicer way to address this, comments are welcome...
> > 
> > > 8-----------------------------------------------------------------8<
> > 
> > On some Microsoft Surface 3, the DMI table gets corrupted for unknown
> > reasons and breaks existing DMI matching used for device-specific quirks.
> > 
> > This commit adds the (broken) DMI data into dmi_system_id tables used
> > for quirks so that the driver can enable quirks even on the affected
> > systems.
> > 
> > On affected systems, the DMI data will look like this:
> > 
> >         $ grep . /sys/devices/virtual/dmi/id/{bios_vendor,board_name,board_vendor,\
> >         chassis_vendor,product_name,sys_vendor}
> >         /sys/devices/virtual/dmi/id/bios_vendor:American Megatrends Inc.
> >         /sys/devices/virtual/dmi/id/board_name:OEMB
> >         /sys/devices/virtual/dmi/id/board_vendor:OEMB
> >         /sys/devices/virtual/dmi/id/chassis_vendor:OEMB
> >         /sys/devices/virtual/dmi/id/product_name:OEMB
> >         /sys/devices/virtual/dmi/id/sys_vendor:OEMB
> 
> I wonder what the bios_date field contains ? Typically when the DMI strings
> are no good (e.g. often they contain "Default String" or "To be filled by OEM")
> we add a check on the bios-date, which together with the broken strings is
> considered unique enough to still allow a match with broken strings in the
> kernel.

Thank you so much for the comment :-)

Here is the full output of "/sys/devices/virtual/dmi/id/*" (not showing
files that need root permission to read):

        $ grep . /sys/devices/virtual/dmi/id/*
        /sys/devices/virtual/dmi/id/bios_date:03/09/2015
        /sys/devices/virtual/dmi/id/bios_release:5.6
        /sys/devices/virtual/dmi/id/bios_vendor:American Megatrends Inc.
        /sys/devices/virtual/dmi/id/bios_version:1.51116.238
        /sys/devices/virtual/dmi/id/board_name:OEMB
        grep: /sys/devices/virtual/dmi/id/board_serial: Permission denied
        /sys/devices/virtual/dmi/id/board_vendor:OEMB
        /sys/devices/virtual/dmi/id/board_version:00
        grep: /sys/devices/virtual/dmi/id/chassis_serial: Permission denied
        /sys/devices/virtual/dmi/id/chassis_type:9
        /sys/devices/virtual/dmi/id/chassis_vendor:OEMB
        /sys/devices/virtual/dmi/id/modalias:dmi:bvnAmericanMegatrendsInc.:bvr1.51116.238:bd03/09/2015:br5.6:svnOEMB:pnOEMB:pvrB16D0SM1C4G1X1:rvnOEMB:rnOEMB:rvr00:cvnOEMB:ct9:cvr:sku:
        grep: /sys/devices/virtual/dmi/id/power: Is a directory
        /sys/devices/virtual/dmi/id/product_name:OEMB
        grep: /sys/devices/virtual/dmi/id/product_serial: Permission denied
        grep: /sys/devices/virtual/dmi/id/product_uuid: Permission denied
        /sys/devices/virtual/dmi/id/product_version:B16D0SM1C4G1X1
        grep: /sys/devices/virtual/dmi/id/subsystem: Is a directory
        /sys/devices/virtual/dmi/id/sys_vendor:OEMB
        /sys/devices/virtual/dmi/id/uevent:MODALIAS=dmi:bvnAmericanMegatrendsInc.:bvr1.51116.238:bd03/09/2015:br5.6:svnOEMB:pnOEMB:pvrB16D0SM1C4G1X1:rvnOEMB:rnOEMB:rvr00:cvnOEMB:ct9:cvr:sku:

The "bios_date" ("03/09/2015") looks not broken.

I also noticed when writing this mail, regarding the ones that need root
permission to read, "board_serial" and "chassis_serial" are now empty.
"product_serial" now shows "OEM":

        $ sudo cat /sys/devices/virtual/dmi/id/product_serial
        OEM

"product_uuid" looks not broken.

> Also have you tried doing something like "load bios/setup defaults" in
> the BIOS setup ? Maybe that helps ?

Unfortunately, there is no option like this...

Regards,
Tsuchiya Yuto

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ