qemu-discuss
[Top][All Lists]
Advanced

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

Re: [Qemu-discuss] Qemu reports slightly less memory on PXE boot


From: Jakob Bohm
Subject: Re: [Qemu-discuss] Qemu reports slightly less memory on PXE boot
Date: Mon, 4 Jan 2016 17:33:17 +0100
User-agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0

On 04/01/2016 17:23, Prem Anand Haridoss wrote:
From: address@hidden [mailto:address@hidden On Behalf Of Jakob Bohm
Sent: 04 January 2016 15:56
To: address@hidden
Subject: Re: [Qemu-discuss] Qemu reports slightly less memory on PXE boot

On 04/01/2016 15:21, Prem Anand Haridoss wrote:
On booting an iso (from the cdrom) with 8G memory, after bootup, I see 8179816 
kB as the total memory available.
However on PXE booting the same vCPE livecd iso over a nic, with the same 8G 
memory, we see only 7857512 kB as the total memory available
Is this a bug in qemu? I am using version 2.5.0 (Debian 1:2.5+dfsg-1)
Regards
Prem

Logs:
=====
On booting iso using cdrom
--------------------------
address@hidden:~/work/tplaf/☸ qemu-system-x86_64 -name Test -nographic 
-enable-kvm -cpu Haswell -smp 2 -m 8G -cdrom $iso -boot d

ISOLINUX 4.05 20121210  Copyright (C) 1994-2011 H. Peter Anvin et al
Press control and F then 1 for help, or ENTER to
boot: live-serial init=/bin/bash
Loading, please wait...
bash: no job control in this shell
root@(none):/#
root@(none):/# cat /proc/meminfo | head -n3
MemTotal:        8179816 kB
MemFree:         8138960 kB
MemAvailable:    8131960 kB

On pxe booting the iso over a nic
---------------------------------
address@hidden:~/☸ qemu-system-x86_64 -name Test -nographic -enable-kvm -cpu Haswell 
-smp 2 -m 8G -netdev 
user,id=net0,tftp=$HOME/TPLAF//TB2/rtr2/tftp,bootfile=/gpxelinux.0 -device 
rtl8139,netdev=net0 -boot once=n                       >>
PXELINUX 6.03 PXE 6.03-pre20 Copyright (C) 1994-2014 H. Peter Anvin et al
boot: Build109.11
Loading memdisk... ok
Loading <deleted>...ok

ISOLINUX 4.05 20121210  Copyright (C) 1994-2011 H. Peter Anvin et al
Press control and F then 1 for help, or ENTER to
boot: live-serial init=/bin/bash
Loading, please wait...
bash: no job control in this shell
root@(none):/#
root@(none):/# cat /proc/meminfo | head -n3
MemTotal:        7857512 kB
MemFree:         7816764 kB
MemAvailable:    7809988 kB
Presumably, the PXE BIOS needs some RAM for the network
stack and CD-ROM emulation.

Perhaps it simply loads the entire ISO image into RAM
before booting it, so the boot process can play with
the network adapter without loosing access to its "CD".

Check if the difference is close to the size of the ISO
file.

Thanks Jakob
You are right!
The difference in memory matches the iso file size. So it seems that qemu uses 
certain portion of ram for storing the iso
But shouldn't qemu allocate extra memory needed to store the iso instead of 
using the ram specified to the guest OS. Or is this how a real device would 
behave when we PXE boot?



I believe this is all happening in the PXE ROM running inside the
virtual machine and would be the same if the same version/brand of PXE
code was used on a real machine.  I don't know if all PXE ROMs on real
machines do this.


Enjoy

Jakob
--
Jakob Bohm, CIO, Partner, WiseMo A/S.  https://www.wisemo.com
Transformervej 29, 2860 Søborg, Denmark.  Direct +45 31 13 16 10
This public discussion message is non-binding and may contain errors.
WiseMo - Remote Service Management for PCs, Phones and Embedded



reply via email to

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