qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] SMBIOS (Set of 10 patches)


From: Gerd Hoffmann
Subject: Re: [Qemu-devel] SMBIOS (Set of 10 patches)
Date: Tue, 11 Mar 2014 11:03:06 +0100

  Hi,

> On Thu, Mar 06, 2014 at 10:03:32AM +0100, Gerd Hoffmann wrote:
> > So, if we manage to get the patches into shape in time for qemu 2.0 your
> > way to do that is fine.  We are pretty close to the 2.0 freeze though,
> > so maybe we should better plan for post-2.0 anyway, especially as you
> > plan to add more tables.
> 
> Hopefully it's not too late, and the patches are in good enough shape :)

I don't feel like rushing it, and hard freeze is tomorrow ...

Issue #1: There are checkpatch errors (scripts/checkpatch.pl).

Issue #2: There is one build warning:

/home/kraxel/projects/qemu/hw/i386/smbios.c: In function
'smbios_build_type_16_table':
/home/kraxel/projects/qemu/hw/i386/smbios.c:520:5: warning: comparison
is always true due to limited range of data type [-Wtype-limits]
     t->maximum_capacity = ram_size < 2ULL << 40 ? ram_size >> 10 :
0x80000000;
     ^

Issue #3: Running a diff on the dmidecode output with and without the
patches yields this:

--- dmidecode.master    2014-03-11 10:38:06.799233009 +0100
+++ dmidecode.smbios    2014-03-11 10:39:36.664377785 +0100
@@ -1,20 +1,20 @@
 # dmidecode 2.12
 SMBIOS 2.4 present.
-10 structures occupying 304 bytes.
-Table at 0x000F09D0.
+10 structures occupying 351 bytes.
+Table at 0x000F09A0.

That comes from upgrading some of the tables to newer versions, ok.
 
 Handle 0x0000, DMI type 0, 24 bytes
 BIOS Information
-       Vendor: Bochs
-       Version: Bochs
-       Release Date: 01/01/2011
+       Vendor: QEMU
+       Version: pc-i440fx-2.0
+       Release Date: 01/01/2014
        Address: 0xE8000
        Runtime Size: 96 kB
        ROM Size: 64 kB
        Characteristics:
                BIOS characteristics not supported
                Targeted content distribution is supported
-       BIOS Revision: 1.0
+       BIOS Revision: 0.0

I think we should not generate a type0 table unless -smbios type0=... is
explicitly specified on the qemu command line.  It is about the
firmware, and we should leave it to the firmware to fill it by default.
If you are running OVMF (EFI) instead of SeaBIOS you should see it in
the dmidecode output.
 
 Handle 0x0300, DMI type 3, 20 bytes
 Chassis Information
-       Manufacturer: Bochs
+       Manufacturer: QEMU
        Type: Other
        Lock: Not Present
-       Version: Not Specified
+       Version: pc-i440fx-2.0
        Serial Number: Not Specified
        Asset Tag: Not Specified
        Boot-up State: Safe

That is ok I think.

-Handle 0x0401, DMI type 4, 32 bytes
+Handle 0x0400, DMI type 4, 35 bytes
 Processor Information
-       Socket Designation: CPU 1
+       Socket Designation: CPU 0

Hmm?

        Type: Central Processor
        Family: Other
-       Manufacturer: Bochs
+       Manufacturer: QEMU
        ID: 63 06 00 00 FD FB 8B 07
-       Version: Not Specified
+       Version: pc-i440fx-2.0
        Voltage: Unknown
        External Clock: Unknown

Ok.

-       Max Speed: 2000 MHz
-       Current Speed: 2000 MHz
+       Max Speed: Unknown
+       Current Speed: Unknown

Where does 2000 MHz come from?  Does SeaBIOS pull something out of thin
air or does it try to measure the speed?

-Handle 0x1100, DMI type 17, 21 bytes
+Handle 0x1100, DMI type 17, 27 bytes
 Memory Device
        Array Handle: 0x1000
-       Error Information Handle: 0x0003
+       Error Information Handle: Not Provided

Same question.

cheers,
  Gerd





reply via email to

[Prev in Thread] Current Thread [Next in Thread]