This is a new version of D9384, updated with jhb's suggestion and patch against
the new location of hostid file.
Proposed commit message:
````
Only try to retrieve UUID from SMBIOS on x86 machines
This prevents an useless warning message on non-x86 machines.
Also rename hostid_hardware() to hostid_smbios() to reflect what it actually
does. In the future we may introduce more hostid_foo functions to obtain UUID
from firmware on other platforms.
Original work by: linimon
``