Hi, On Fri, Jul 19, 2013 at 10:24 AM, Holger Goetz <holg...@hgsys.de> wrote: > Yes it's towards the right direction. But it is 32bit only if i understand > correctly, and it basically is a memory access to fixed/hardcoded MEMORY > address (0x80000001). to pick the veondor id and machine info.
It's true that I've mostly been using the module on 32-bit virtual machines, so it hasn't really been tested elsewhere. However, I'm not sure I understand what you mean by the hard-coded memory address. The first function grub_smbios_locate_eps searches for the SMBIOS entry point structure as described in the spec. The table entries are then read at the table address found in the EPS, not a hard-coded location. > I have only 64bit - UEFI here - therefore the approach w/ first searching > the SMBIOS infoblock in memory is probably required. And then properly walk > through the info-tables/blocks to get to the UUID entry. It doesn'T need to > be a fixed info to be retrieved from the SMBIOS memory - maybe a generic > function to query/search a specific entry and return that to be assigned to > a variable would be more flexible. The module's command-line interface does use a (dumb) query/search method. You can specify the desired entry's type and/or handle and the data to retrieve from it. For example the following command prints the machine name (i.e. the string at offset 5 in an entry with type 1). smbios -t 1 -s 5 I think you may have found the first patch I sent in that old thread, which was for different functionality. The SMBIOS module can be downloaded from the list archive[1]. Unfortunately it doesn't have any convenient functions to output a usable UUID. It shouldn't take much to add one: the variable "entry" in the "main" function is a pointer to the matched entry, so entry[8] through entry[23] is the UUID in a call "smbios -t 1 ...". I've verified these bytes correspond to dmidecode output on my physical hardware with the following. for i in 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 do smbios -t 1 -b $i done If the module isn't salvageable on UEFI, maybe I can send out an updated version whenever I upgrade to such a system. Thanks. David [1] https://lists.gnu.org/archive/html/grub-devel/2013-04/binx8am8MvVSh.bin _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel