From 34a0b876d2f89419aa0b3e0b5249128ff7a6b90b Mon Sep 17 00:00:00 2001 From: "kfraser@localhost.localdomain" Date: Thu, 24 May 2007 15:40:54 +0100 Subject: xm-test: ia64 min memory & arbitrarily large ramdisk 1) Sets a minimum of 128MB RAM for an ia64 domU; this limit was set after experimentation, which seems to indicate it's a reasonable lower limit (the 32MB limit previously in place did not allow an ia64 domU to start). If there's any problem with this, I don't mind splitting the patch and sending it to the ia64 list, but it was small, so I hope it's okay to include it. 2) xm-test uses ramdisks built with uClibc, which doesn't compile on ia64. I was able to create a ramdisk by hand, but as it was too large, the resultant domU crashed after boot. This patch enables the use of an arbitrarily large ramdisk, so long as it's uncompressed. As xm-test builds only uncompressed ramdisks, I figured this was reasonable for that specific application. Suggestions on how to detect and handle a compressed ramdisk would be welcome. Signed-off-by: Alex Williamson --- tools/xm-test/lib/XmTestLib/arch.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'tools/xm-test/lib') diff --git a/tools/xm-test/lib/XmTestLib/arch.py b/tools/xm-test/lib/XmTestLib/arch.py index b13d41dcc9..0a55a31ae7 100644 --- a/tools/xm-test/lib/XmTestLib/arch.py +++ b/tools/xm-test/lib/XmTestLib/arch.py @@ -46,6 +46,9 @@ def ia_checkBuffer(buffer): def ia_minSafeMem(): return 32 +def ia64_minSafeMem(): + return 128 + def ia_getDeviceModel(): """Get the path to the device model based on the architecture reported in uname""" @@ -139,6 +142,17 @@ if _arch == "x86" or _arch == "x86_64" or _arch == "ia64": configDefaults = ia_HVMDefaults else: configDefaults = ia_ParavirtDefaults + + # note: xm-test generates an uncompressed image, and this code + # expects one. This will fail with a gzip-ed image. + if configDefaults['ramdisk']: + rd_size = os.stat(configDefaults['ramdisk']).st_size + configDefaults['extra'] = 'ramdisk_size=' + str((rd_size / 1024)+1) + + if _arch == "ia64": + minSafeMem = ia64_minSafeMem + configDefaults['memory'] = ia64_minSafeMem() + elif _arch == "powerpc": minSafeMem = ppc_minSafeMem getDefaultKernel = ppc_getDefaultKernel -- cgit v1.2.3