diff options
Diffstat (limited to 'results/classifier/118/graphic/2729')
| -rw-r--r-- | results/classifier/118/graphic/2729 | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/results/classifier/118/graphic/2729 b/results/classifier/118/graphic/2729 new file mode 100644 index 00000000..f650c154 --- /dev/null +++ b/results/classifier/118/graphic/2729 @@ -0,0 +1,104 @@ +register: 0.982 +graphic: 0.977 +architecture: 0.956 +debug: 0.952 +kernel: 0.939 +files: 0.924 +performance: 0.908 +user-level: 0.872 +ppc: 0.871 +peripherals: 0.867 +assembly: 0.847 +semantic: 0.828 +device: 0.774 +PID: 0.766 +mistranslation: 0.755 +vnc: 0.743 +socket: 0.729 +boot: 0.710 +network: 0.709 +arm: 0.703 +hypervisor: 0.701 +risc-v: 0.694 +TCG: 0.685 +VMM: 0.677 +permissions: 0.655 +KVM: 0.621 +x86: 0.567 +virtual: 0.552 +i386: 0.532 + +qemu-system-aarch64 -M raspi4b -- no valid DTB provided in x0 register +Description of problem: +When starting `qemu-system-aarch64 -M raspi4b`, no valid DTB is provided in x0. +Steps to reproduce: +Make a simple binary to loop forever + +``` +$ cat loop.c +void _start(void) +{ + for(;;) + ; +} +$ aarch64-linux-gnu-gcc loop.c -nostdlib +$ aarch64-linux-gnu-objcopy -O binary a.out loop.bin +``` + +Start qemu for debugging and start gdb + +``` +$ qemu-system-aarch64 -S -s -M raspi4b -kernel loop.bin +# in another terminal +$ aarch64-linux-gnu-gdb +(gdb) target remote :1234 +Remote debugging using :1234 +warning: No executable has been specified and target does not support +determining executable automatically. Try using the "file" command. +0x0000000000000000 in ?? () +(gdb) watch *$x0 +Watchpoint 3: *$x0 +(gdb) watch $x0 +Watchpoint 4: $x0 +(gdb) x/2x$x0 +0x0: 0x580000c0 0xaa1f03e1 +(gdb) si + +Thread 1 hit Watchpoint 3: *$x0 + +Old value = 1476395200 +New value = 5 + +Thread 1 hit Watchpoint 4: $x0 + +Old value = 0 +New value = 256 +0x0000000000000004 in ?? () +(gdb) x/2x$x0 +0x100: 0x00000005 0x54410001 +(gdb) si +0x0000000000000008 in ?? () +(gdb) si +0x000000000000000c in ?? () +(gdb) si +0x000000000000000c in ?? () +(gdb) si +0x0000000000000010 in ?? () +(gdb) si +0x0000000000000014 in ?? () +(gdb) si +0x0000000000080000 in ?? () +(gdb) si +0x0000000000000200 in ?? () +(gdb) si +0x0000000000000200 in ?? () +(gdb) si +0x0000000000000200 in ?? () +(gdb) si +0x0000000000000200 in ?? () +(gdb) x/2x$x0 +0x100: 0x00000005 0x54410001 +(gdb) +``` + +Note that at no time is a valid DTB provided in x0. I expected to see the DTB magic 0xd00dfeed (or 0xedfe0dd0) at the memory pointed to by x0 |