* [PATCH] add videoram to stubdom initial memory reservation
@ 2009-01-29 16:26 Stefano Stabellini
0 siblings, 0 replies; only message in thread
From: Stefano Stabellini @ 2009-01-29 16:26 UTC (permalink / raw)
To: xen-devel
This patch adds a videoram parameter (4MB is the default) to pv guests
too: if the pv guest is actually a stubdomain then the videoram size is
added to the initial required available memory.
This way there is no risk that a stubdom fails to populate the videoram
because the RAM freed for the videoram by dom0 has already been used to
create the stubdom.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
diff -r 40d9d9ff435a stubdom/stubdom-dm
--- a/stubdom/stubdom-dm Thu Jan 15 12:54:31 2009 +0000
+++ b/stubdom/stubdom-dm Thu Jan 29 15:36:02 2009 +0000
@@ -15,6 +15,7 @@
vncviewer=0
vncpid=
extra=
+videoram=4
while [ "$#" -gt 0 ];
do
if [ "$#" -ge 2 ];
@@ -38,6 +39,10 @@
extra="$extra -loadvm $2";
shift
;;
+ -videoram)
+ videoram="$2"
+ shift
+ ;;
esac
fi
case "$1" in
@@ -72,7 +77,7 @@
sleep 1
done
-creation="xm create -c $domname-dm target=$domid memory=32 extra=\"$extra\""
+creation="xm create -c $domname-dm target=$domid memory=32 videoram=$videoram extra=\"$extra\""
(while true ; do sleep 60 ; done) | /bin/sh -c "$creation" &
#xterm -geometry +0+0 -e /bin/sh -c "$creation ; echo ; echo press ENTER to shut down ; read" &
diff -r 40d9d9ff435a tools/python/xen/xend/image.py
--- a/tools/python/xen/xend/image.py Thu Jan 15 12:54:31 2009 +0000
+++ b/tools/python/xen/xend/image.py Thu Jan 29 15:36:02 2009 +0000
@@ -633,6 +633,8 @@
def configure(self, vmConfig):
ImageHandler.configure(self, vmConfig)
+ self.vramsize = int(vmConfig['platform'].get('videoram',4)) * 1024
+ self.is_stubdom = (self.kernel.find('stubdom') >= 0)
def buildDomain(self):
store_evtchn = self.vm.getStorePort()
@@ -663,6 +665,17 @@
features = self.vm.getFeatures(),
flags = self.flags,
vhpt = self.vhpt)
+
+ def getRequiredAvailableMemory(self, mem_kb):
+ if self.is_stubdom :
+ mem_kb += self.vramsize
+ return mem_kb
+
+ def getRequiredInitialReservation(self):
+ return self.vm.getMemoryTarget()
+
+ def getRequiredMaximumReservation(self):
+ return self.vm.getMemoryMaximum()
def parseDeviceModelArgs(self, vmConfig):
ret = ImageHandler.parseDeviceModelArgs(self, vmConfig)
diff -r 40d9d9ff435a tools/python/xen/xm/create.py
--- a/tools/python/xen/xm/create.py Thu Jan 15 12:54:31 2009 +0000
+++ b/tools/python/xen/xm/create.py Thu Jan 29 15:36:02 2009 +0000
@@ -635,6 +635,8 @@
if vals.root:
cmdline_root = strip('root=', vals.root)
config_image.append(['root', cmdline_root])
+ if vals.videoram:
+ config_image.append(['videoram', vals.videoram])
if vals.extra:
config_image.append(['args', vals.extra])
@@ -884,7 +886,7 @@
"""Create the config for HVM devices.
"""
args = [ 'device_model', 'pae', 'vcpus', 'boot', 'fda', 'fdb', 'timer_mode',
- 'localtime', 'serial', 'stdvga', 'videoram', 'isa', 'nographic', 'soundhw',
+ 'localtime', 'serial', 'stdvga', 'isa', 'nographic', 'soundhw',
'vnc', 'vncdisplay', 'vncunused', 'vncconsole', 'vnclisten',
'sdl', 'display', 'xauthority', 'rtc_timeoffset', 'monitor',
'acpi', 'apic', 'usb', 'usbdevice', 'keymap', 'pci', 'hpet',
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2009-01-29 16:26 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-29 16:26 [PATCH] add videoram to stubdom initial memory reservation Stefano Stabellini
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.