Lines Matching +full:self +full:- +full:power
4 # target machines. powernv supports the Power hypervisor ISA, and
5 # pseries supports the nested-HV hypervisor spec.
10 # later. See the COPYING file in the top-level directory.
34 panic_message = 'Kernel panic - not syncing'
38 ('https://dl-cdn.alpinelinux.org/alpine/v3.21/'
39 'releases/ppc64le/alpine-standard-3.21.0-ppc64le.iso'),
42 def extract_from_iso(self, iso, path): argument
50 filename = self.scratch_file(os.path.basename(path))
52 cmd = "xorriso -osirrox on -indev %s -cpx %s %s" % (iso, path, filename)
60 def setUp(self): argument
63 self.iso_path = self.ASSET_ISO.fetch()
64 self.vmlinuz = self.extract_from_iso(self.iso_path, '/boot/vmlinuz-lts')
65 self.initramfs = self.extract_from_iso(self.iso_path, '/boot/initramfs-lts')
67 def do_start_alpine(self): argument
68 self.vm.set_console()
69 kernel_command_line = self.KERNEL_COMMON_COMMAND_LINE
70 self.vm.add_args("-kernel", self.vmlinuz)
71 self.vm.add_args("-initrd", self.initramfs)
72 self.vm.add_args("-smp", "4", "-m", "2g")
73 self.vm.add_args("-drive", f"file={self.iso_path},format=raw,if=none,"
74 "id=drive0,read-only=true")
76 self.vm.launch()
78 wait_for_console_pattern(self, 'localhost login:')
79 exec_command_and_wait_for_pattern(self, 'root', ps1)
81 …exec_command_and_wait_for_pattern(self, 'date -s "' + datetime.utcnow().strftime('%Y-%m-%d %H:%M:%…
83 exec_command_and_wait_for_pattern(self, 'setup-alpine -qe', ps1)
84 exec_command_and_wait_for_pattern(self, 'setup-apkrepos -c1', ps1)
85 exec_command_and_wait_for_pattern(self, 'apk update', ps1)
87 # exec_command_and_wait_for_pattern(self, 'apk upgrade --available', ps1)
89 def do_stop_alpine(self): argument
90 exec_command(self, 'echo "TEST ME"')
91 wait_for_console_pattern(self, 'alpine:~#')
92 exec_command(self, 'poweroff')
93 wait_for_console_pattern(self, 'reboot: Power down')
94 self.vm.wait()
96 def do_setup_kvm(self): argument
98 exec_command_and_wait_for_pattern(self, 'apk add qemu-system-ppc64', ps1)
99 exec_command_and_wait_for_pattern(self, 'modprobe kvm-hv', ps1)
104 def do_test_kvm(self, hpt=False): argument
109 exec_command(self, 'qemu-system-ppc64 -nographic -smp 2 -m 1g '
110 '-machine pseries,x-vof=on,accel=kvm '
111 '-machine cap-cfpc=broken,cap-sbbc=broken,'
112 'cap-ibs=broken,cap-ccf-assist=off '
113 '-drive file=/dev/nvme0n1,format=raw,readonly=on '
114 '-initrd /media/nvme0n1/boot/initramfs-lts '
115 '-kernel /media/nvme0n1/boot/vmlinuz-lts '
116 '-append \'usbcore.nousb ' + append + '\'')
119 wait_for_console_pattern(self, 'localhost login:')
120 exec_command_and_wait_for_pattern(self, 'root', ps1)
121 exec_command(self, 'poweroff')
122 wait_for_console_pattern(self, 'reboot: Power down')
124 wait_for_console_pattern(self, 'alpine:~#')
126 def test_hv_pseries(self): argument
127 self.require_accelerator("tcg")
128 self.require_netdev('user')
129 self.set_machine('pseries')
130 self.vm.add_args("-accel", "tcg,thread=multi")
131 self.vm.add_args('-device', 'nvme,serial=1234,drive=drive0')
132 self.vm.add_args("-machine", "x-vof=on,cap-nested-hv=on")
133 self.do_start_alpine()
134 self.do_setup_kvm()
135 self.do_test_kvm()
136 self.do_stop_alpine()
138 def test_hv_pseries_kvm(self): argument
139 self.require_accelerator("kvm")
140 self.require_netdev('user')
141 self.set_machine('pseries')
142 self.vm.add_args("-accel", "kvm")
143 self.vm.add_args('-device', 'nvme,serial=1234,drive=drive0')
144 self.vm.add_args("-machine", "x-vof=on,cap-nested-hv=on,cap-ccf-assist=off")
145 self.do_start_alpine()
146 self.do_setup_kvm()
147 self.do_test_kvm()
148 self.do_stop_alpine()
150 def test_hv_powernv(self): argument
151 self.require_accelerator("tcg")
152 self.require_netdev('user')
153 self.set_machine('powernv')
154 self.vm.add_args("-accel", "tcg,thread=multi")
155 self.vm.add_args('-device', 'nvme,bus=pcie.2,addr=0x0,serial=1234,drive=drive0',
156 '-device', 'e1000e,netdev=net0,mac=C0:FF:EE:00:00:02,bus=pcie.0,addr=0x0',
157 '-netdev', 'user,id=net0,hostfwd=::20022-:22,hostname=alpine')
158 self.do_start_alpine()
159 self.do_setup_kvm()
160 self.do_test_kvm()
161 self.do_test_kvm(True)
162 self.do_stop_alpine()