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-next>] [day] [month] [year] [list]
Date:	Wed, 20 Feb 2013 10:12:18 -0800
From:	"H.J. Lu" <hjl.tools@...il.com>
To:	LKML <linux-kernel@...r.kernel.org>,
	Zhenzhong Duan <zhenzhong.duan@...cle.com>
Subject: [PATCH] DMI: Always call dmi_present with DMI structure

Hi,

This patch:

commit 9f9c9cbb60576a1518d0bf93fb8e499cffccf377
Author: Zhenzhong Duan <zhenzhong.duan@...cle.com>
Date:   Thu Dec 20 15:05:14 2012 -0800

    drivers/firmware/dmi_scan.c: fetch dmi version from SMBIOS if it exists

    The right dmi version is in SMBIOS if it's zero in DMI region

    This issue was originally found from an oracle bug.
    One customer noticed system UUID doesn't match between dmidecode & uek2.

     - HP ProLiant BL460c G6 :
       # cat /sys/devices/virtual/dmi/id/product_uuid
       00000000-0000-4C48-3031-4D5030333531
       # dmidecode | grep -i uuid    drivers/firmware/dmi_scan.c:
fetch dmi version from SMBIOS if it exists

    The right dmi version is in SMBIOS if it's zero in DMI region

    This issue was originally found from an oracle bug.
    One customer noticed system UUID doesn't match between dmidecode & uek2.

     - HP ProLiant BL460c G6 :
       # cat /sys/devices/virtual/dmi/id/product_uuid
       00000000-0000-4C48-3031-4D5030333531
       # dmidecode | grep -i uuid
       UUID: 00000000-0000-484C-3031-4D5030333531

    From SMBIOS 2.6 on, spec use little-endian encoding for UUID other than
    network byte order.

    So we need to get dmi version to distinguish.  If version is 0.0, the
    real version is taken from the SMBIOS version.  This is part of original
    kernel comment in code.

       UUID: 00000000-0000-484C-3031-4D5030333531

    From SMBIOS 2.6 on, spec use little-endian encoding for UUID other than
    network byte order.

    So we need to get dmi version to distinguish.  If version is 0.0, the
    real version is taken from the SMBIOS version.  This is part of original
    kernel comment in code.

causes a regression in 3.7, 3.8 and 3.9 kernels.   Before the change,
we only scan DMI structure.  Now smbios_present scans SMBIOS
entry point.  I have a machine which has invalid checksum in
SMBIOS entry point.  We wind up calling dmi_present with SMBIOS
entry point instead of DMI structure.  This patch changes smbios_present
to always call dmi_present with DMI structure.


-- 
H.J.

Download attachment "0001-DMI-Always-call-dmi_present-with-DMI-structure.patch" of type "application/octet-stream" (1213 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ