On 04/25/19 10:15, Gerd Hoffmann wrote: > On Wed, Apr 24, 2019 at 09:16:56AM +0800, Li Qiang wrote: >> Thomas Huth <th...@redhat.com> 于2019年4月24日周三 上午12:29写道: >> >>> Is this endianess-safe? Or do you need to byteswap reboot_timeout if the >>> host and guest endianess does not match? >> >> Good question! >> >> IIUC, the qemu fw_cfg store the 'file' entry data just in byte stream. > > No. Integers are defined to be little endian. See fw_cfg_add_i64() for > example, there is an explicit cpu_to_le64() call for that.
Endianness may be defined on a case-by-case basis (i.e. if you introduce a new named fw_cfg file, you can make its contents whatever you like); however, the integer-adding/modifying helper functions do express a preference for endianness. Search "include/hw/nvram/fw_cfg.h" for "endian". Thanks Laszlo