@@ -49,6 +49,7 @@ def __init__(self):
49
49
self .interactive = False
50
50
self .kernel = None
51
51
self .kernel_dir = None
52
+ self .memory = '512m'
52
53
self .supports_efi = False
53
54
# It may be tempting to use self.use_kvm during initialization of
54
55
# subclasses to set certain properties but the user can explicitly opt
@@ -70,7 +71,6 @@ def __init__(self):
70
71
'-nodefaults' ,
71
72
] # yapf: disable
72
73
self ._qemu_path = None
73
- self ._ram = '512m'
74
74
75
75
def _find_dtb (self ):
76
76
if not self ._dtbs :
@@ -301,7 +301,7 @@ def run(self):
301
301
self ._qemu_args += ['-cpu' , ',' .join (self ._kvm_cpu ), '-enable-kvm' ]
302
302
303
303
# Machine specs
304
- self ._qemu_args += ['-m' , self ._ram ]
304
+ self ._qemu_args += ['-m' , self .memory ]
305
305
if self .smp :
306
306
self ._qemu_args += ['-smp' , str (self .smp )]
307
307
@@ -512,7 +512,7 @@ def __init__(self):
512
512
'-bios' , bios ,
513
513
'-no-reboot' ,
514
514
] # yapf: disable
515
- self ._ram = '2G'
515
+ self .memory = '2G'
516
516
self .smp = 2
517
517
518
518
@@ -555,12 +555,12 @@ def __init__(self):
555
555
super ().__init__ ()
556
556
557
557
self .cmdline .append ('console=ttyS0' )
558
+ self .memory = '128m'
558
559
self ._default_kernel_path = Path ('arch/powerpc/boot/uImage' )
559
560
self ._initrd_arch = 'ppc32'
560
561
self ._machine = 'bamboo'
561
562
self ._qemu_arch = 'ppc'
562
563
self ._qemu_args .append ('-no-reboot' )
563
- self ._ram = '128m'
564
564
565
565
def run (self ):
566
566
self ._qemu_args += ['-machine' , self ._machine ]
@@ -582,21 +582,22 @@ class PowerPC64QEMURunner(QEMURunner):
582
582
def __init__ (self ):
583
583
super ().__init__ ()
584
584
585
+ self .memory = '1G'
585
586
self ._default_kernel_path = Path ('vmlinux' )
586
587
self ._initrd_arch = self ._qemu_arch = 'ppc64'
587
588
self ._qemu_args += [
588
589
'-cpu' , 'power8' ,
589
590
'-machine' , 'pseries' ,
590
591
'-vga' , 'none' ,
591
592
] # yapf: disable
592
- self ._ram = '1G'
593
593
594
594
595
595
class PowerPC64LEQEMURunner (QEMURunner ):
596
596
597
597
def __init__ (self ):
598
598
super ().__init__ ()
599
599
600
+ self .memory = '2G'
600
601
self ._default_kernel_path = Path ('arch/powerpc/boot/zImage.epapr' )
601
602
self ._initrd_arch = 'ppc64le'
602
603
self ._qemu_arch = 'ppc64'
@@ -605,7 +606,6 @@ def __init__(self):
605
606
'-device' , 'isa-ipmi-bt,bmc=bmc0,irq=10' ,
606
607
'-machine' , 'powernv' ,
607
608
] # yapf: disable
608
- self ._ram = '2G'
609
609
610
610
611
611
class RISCVQEMURunner (QEMURunner ):
@@ -811,6 +811,12 @@ def parse_arguments():
811
811
'--shell' ,
812
812
action = 'store_true' ,
813
813
help = 'Instead of immediately shutting down machine, spawn a shell.' )
814
+ parser .add_argument (
815
+ '-m' ,
816
+ '--memory' ,
817
+ help =
818
+ "Value for '-m' QEMU option (default: generally '512m', depends on machine)" ,
819
+ )
814
820
parser .add_argument (
815
821
'-s' ,
816
822
'--smp' ,
@@ -884,6 +890,9 @@ def parse_arguments():
884
890
if args .gh_json_file :
885
891
runner .gh_json_file = Path (args .gh_json_file ).resolve ()
886
892
893
+ if args .memory :
894
+ runner .memory = args .memory
895
+
887
896
if args .no_kvm :
888
897
runner .use_kvm = False
889
898
0 commit comments