@@ -100,15 +100,18 @@ function decomp_rootfs() {
100
100
101
101
# Boot QEMU
102
102
function setup_qemu_args() {
103
+ APPEND_STRING=" "
103
104
if ${INTERACTIVE:= false} ; then
104
- RDINIT=" rdinit=/bin/sh"
105
- APPEND_RDINIT=(-append " ${RDINIT} " )
105
+ APPEND_STRING+=" rdinit=/bin/sh "
106
+ fi
107
+ if ${GDB:= false} ; then
108
+ APPEND_STRING+=" nokaslr "
106
109
fi
107
110
108
111
case ${ARCH} in
109
112
arm32_v5)
110
113
ARCH=arm
111
- QEMU_ARCH_ARGS=(" ${APPEND_RDINIT[@]} "
114
+ QEMU_ARCH_ARGS=(
112
115
-dtb " ${KBUILD_DIR} " /arch/arm/boot/dts/aspeed-bmc-opp-palmetto.dtb
113
116
-machine palmetto-bmc
114
117
-no-reboot)
@@ -117,7 +120,7 @@ function setup_qemu_args() {
117
120
118
121
arm32_v6)
119
122
ARCH=arm
120
- QEMU_ARCH_ARGS=(" ${APPEND_RDINIT[@]} "
123
+ QEMU_ARCH_ARGS=(
121
124
-dtb " ${KBUILD_DIR} " /arch/arm/boot/dts/aspeed-bmc-opp-romulus.dtb
122
125
-machine romulus-bmc
123
126
-no-reboot)
@@ -126,23 +129,25 @@ function setup_qemu_args() {
126
129
127
130
arm32_v7)
128
131
ARCH=arm
129
- QEMU_ARCH_ARGS=(-append " console=ttyAMA0${RDINIT} "
132
+ APPEND_STRING+=" console=ttyAMA0 "
133
+ QEMU_ARCH_ARGS=(
130
134
-machine virt
131
135
-no-reboot)
132
136
QEMU=(qemu-system-arm)
133
137
;;
134
138
135
139
arm64)
136
140
KIMAGE=Image.gz
137
- QEMU_ARCH_ARGS=(-append " console=ttyAMA0${RDINIT} "
141
+ APPEND_STRING+=" console=ttyAMA0 "
142
+ QEMU_ARCH_ARGS=(
138
143
-cpu cortex-a57
139
144
-machine virt)
140
145
QEMU=(qemu-system-aarch64)
141
146
;;
142
147
143
148
mips | mipsel)
144
149
KIMAGE=vmlinux
145
- QEMU_ARCH_ARGS=(" ${APPEND_RDINIT[@]} "
150
+ QEMU_ARCH_ARGS=(
146
151
-cpu 24Kf
147
152
-machine malta)
148
153
QEMU=(qemu-system-" ${ARCH} " )
@@ -151,7 +156,8 @@ function setup_qemu_args() {
151
156
152
157
ppc32)
153
158
ARCH=powerpc
154
- QEMU_ARCH_ARGS=(-append " console=ttyS0${RDINIT} "
159
+ APPEND_STRING+=" console=ttyS0 "
160
+ QEMU_ARCH_ARGS=(
155
161
-machine bamboo
156
162
-no-reboot)
157
163
QEMU_RAM=128m
@@ -161,7 +167,7 @@ function setup_qemu_args() {
161
167
ppc64)
162
168
ARCH=powerpc
163
169
KIMAGE=vmlinux
164
- QEMU_ARCH_ARGS=(" ${APPEND_RDINIT[@]} "
170
+ QEMU_ARCH_ARGS=(
165
171
-machine pseries
166
172
-vga none)
167
173
QEMU_RAM=1G
@@ -171,7 +177,7 @@ function setup_qemu_args() {
171
177
ppc64le)
172
178
ARCH=powerpc
173
179
KIMAGE=zImage.epapr
174
- QEMU_ARCH_ARGS=(" ${APPEND_RDINIT[@]} "
180
+ QEMU_ARCH_ARGS=(
175
181
-device " ipmi-bmc-sim,id=bmc0"
176
182
-device " isa-ipmi-bt,bmc=bmc0,irq=10"
177
183
-L " ${IMAGES_DIR} /" -bios skiboot.lid
@@ -182,7 +188,7 @@ function setup_qemu_args() {
182
188
183
189
x86 | x86_64)
184
190
KIMAGE=bzImage
185
- QEMU_ARCH_ARGS=(-append " console=ttyS0${RDINIT} " )
191
+ APPEND_STRING+= " console=ttyS0 "
186
192
# Use KVM if the processor supports it (first part) and the KVM module is loaded (second part)
187
193
[[ $( grep -c -E ' vmx|svm' /proc/cpuinfo) -gt 0 && $( lsmod 2> /dev/null | grep -c kvm) -gt 0 ]] &&
188
194
QEMU_ARCH_ARGS=(" ${QEMU_ARCH_ARGS[@]} " -cpu host -d " unimp,guest_errors" -enable-kvm)
@@ -213,6 +219,7 @@ function invoke_qemu() {
213
219
# Note: no -serial mon:stdio
214
220
" ${QEMU[@]} " \
215
221
" ${QEMU_ARCH_ARGS[@]} " \
222
+ -append " ${APPEND_STRING} " \
216
223
-display none \
217
224
-initrd " ${ROOTFS} " \
218
225
-kernel " ${KERNEL} " \
@@ -239,6 +246,7 @@ function invoke_qemu() {
239
246
set -x
240
247
" ${QEMU[@]} " \
241
248
" ${QEMU_ARCH_ARGS[@]} " \
249
+ -append " ${APPEND_STRING} " \
242
250
-display none \
243
251
-initrd " ${ROOTFS} " \
244
252
-kernel " ${KERNEL} " \
0 commit comments