blob: 96c3e345393616d227b15800f048473b5c2f61a6 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
arm: 0.898
architecture: 0.741
performance: 0.713
device: 0.712
KVM: 0.706
boot: 0.654
kernel: 0.650
risc-v: 0.622
hypervisor: 0.619
graphic: 0.616
vnc: 0.603
PID: 0.592
i386: 0.557
semantic: 0.532
register: 0.515
VMM: 0.513
mistranslation: 0.494
x86: 0.482
permissions: 0.481
user-level: 0.479
ppc: 0.476
network: 0.443
socket: 0.430
TCG: 0.427
debug: 0.420
peripherals: 0.401
files: 0.401
virtual: 0.397
assembly: 0.304
detect error when kernel and initrd images exceed ram size
I was unable to figure out why my VM wasn't booting when I added a "-initrd" image. I would launch qemu and get no output, and no error message, it would just spin.
Turns out my initrd image was around 270 MB but I wasn't giving an explicit ram size to qemu. I was told the default memory size was around 120 MB so this was definitely a problem. I think that the qemu "pseudo-bootloader" should detect when the kernel image and initrd image sizes exceed the size of ram and print a nice error to the user, something like:
Error: the total size of the given boot images (342M) exceeds the size allocated for memory (120M)
We could also do a better job of identifying when different things (initrd, kernel, dtb) overlap in memory.
As of the 4.1 release we should now do a better job of identifying overlaps between initrd, kernel, end of ram, etc, for the built-in arm bootloader.
|