summary refs log tree commit diff stats
path: root/results/classifier/118/assembly-i386
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/118/assembly-i386')
-rw-r--r--results/classifier/118/assembly-i386/178700284
-rw-r--r--results/classifier/118/assembly-i386/218096
2 files changed, 180 insertions, 0 deletions
diff --git a/results/classifier/118/assembly-i386/1787002 b/results/classifier/118/assembly-i386/1787002
new file mode 100644
index 000000000..d8b88407b
--- /dev/null
+++ b/results/classifier/118/assembly-i386/1787002
@@ -0,0 +1,84 @@
+i386: 0.948
+assembly: 0.914
+architecture: 0.893
+graphic: 0.775
+device: 0.753
+files: 0.685
+ppc: 0.667
+vnc: 0.613
+semantic: 0.604
+PID: 0.564
+permissions: 0.553
+performance: 0.553
+network: 0.552
+register: 0.521
+kernel: 0.505
+socket: 0.470
+TCG: 0.435
+risc-v: 0.429
+user-level: 0.399
+debug: 0.394
+x86: 0.364
+boot: 0.335
+arm: 0.318
+VMM: 0.306
+mistranslation: 0.288
+peripherals: 0.278
+virtual: 0.263
+hypervisor: 0.222
+KVM: 0.196
+--------------------
+i386: 0.996
+x86: 0.927
+user-level: 0.513
+debug: 0.359
+assembly: 0.320
+TCG: 0.118
+files: 0.082
+virtual: 0.024
+PID: 0.016
+kernel: 0.015
+register: 0.011
+performance: 0.007
+semantic: 0.006
+device: 0.005
+hypervisor: 0.005
+network: 0.004
+architecture: 0.003
+peripherals: 0.002
+ppc: 0.002
+graphic: 0.001
+VMM: 0.001
+vnc: 0.001
+socket: 0.001
+boot: 0.001
+risc-v: 0.001
+permissions: 0.000
+arm: 0.000
+mistranslation: 0.000
+KVM: 0.000
+
+disas/i386.c compile error
+
+QEMU Version: 2.12.1, 3.0.0-rc4
+Compiling with GCC 8.2.0
+System: Plop Linux, 32 bit 
+
+Error:
+  CC      disas/i386.o
+/tmp/ccK8tHRs.s: Assembler messages:
+/tmp/ccK8tHRs.s:53353: Error: can't resolve `L0' {*ABS* section} - `obuf' {.bss section}
+
+
+The problematic line is in 'disas/i386.c' in the function 'INVLPG_Fixup (int bytemode, int sizeflag)':
+strcpy (obuf + strlen (obuf) - 6, alt);
+
+If I comment out this line, then compiling works without problems.
+
+
+The error comes only on 32 bit. On 64 bit, compiling works without problems.
+
+Looking through old bug tickets ... This sounds like it was rather a bug in your toolchain ... is it still reproducible with a newer version of your Linux distro and the latest version of QEMU?
+
+[Expired for QEMU because there has been no activity for 60 days.]
+
diff --git a/results/classifier/118/assembly-i386/2180 b/results/classifier/118/assembly-i386/2180
new file mode 100644
index 000000000..772702e2e
--- /dev/null
+++ b/results/classifier/118/assembly-i386/2180
@@ -0,0 +1,96 @@
+assembly: 0.960
+i386: 0.932
+architecture: 0.890
+kernel: 0.854
+debug: 0.842
+x86: 0.836
+device: 0.808
+ppc: 0.803
+graphic: 0.744
+socket: 0.738
+arm: 0.729
+files: 0.714
+KVM: 0.663
+vnc: 0.656
+PID: 0.623
+boot: 0.619
+network: 0.609
+permissions: 0.605
+peripherals: 0.595
+performance: 0.566
+risc-v: 0.561
+hypervisor: 0.551
+semantic: 0.550
+register: 0.538
+virtual: 0.454
+VMM: 0.370
+user-level: 0.312
+mistranslation: 0.301
+TCG: 0.276
+--------------------
+i386: 0.991
+assembly: 0.979
+x86: 0.973
+TCG: 0.610
+debug: 0.429
+virtual: 0.365
+boot: 0.181
+kernel: 0.090
+performance: 0.087
+KVM: 0.066
+PID: 0.055
+hypervisor: 0.048
+files: 0.047
+socket: 0.045
+register: 0.039
+device: 0.031
+architecture: 0.030
+semantic: 0.027
+vnc: 0.022
+user-level: 0.009
+network: 0.006
+VMM: 0.006
+permissions: 0.003
+risc-v: 0.003
+graphic: 0.003
+peripherals: 0.002
+ppc: 0.001
+mistranslation: 0.001
+arm: 0.000
+
+QEMU crashes when an interrupt is triggered whose descriptor is not in physical memory
+Description of problem:
+When an interrupt is triggered whose descriptor is mapped but not in physical memory, QEMU crashes with the following message:
+```
+**
+ERROR:../system/cpus.c:524:bql_lock_impl: assertion failed: (!bql_locked())
+Bail out! ERROR:../system/cpus.c:524:bql_lock_impl: assertion failed: (!bql_locked())
+Aborted (core dumped)
+```
+
+The given code triggers the bug by moving the IDT's base address, but it can also be triggered by any other method of moving the IDT's physical memory location, f.ex paging. With KVM enabled, this specific example loops forever instead of crashing, but if the code is altered to use paging, an internal KVM error is reported and the VM is paused.
+Steps to reproduce:
+1. Assemble the code listed below using NASM: `nasm test.asm -o test.bin`
+2. Run the code using `qemu-system-i386 -drive format=raw,file=test.bin`. Note that the given code only triggers the bug if the guest has 2 gigabytes or less of physical memory.
+3. QEMU crashes.
+Additional information:
+NASM assembly of the code used:
+```
+bits 16
+org 0x7c00
+
+_start:
+    ; Disable interrupts and load new IDT
+    cli
+    o32 lidt [idtdesc]
+    ; Descriptor for INT 0 is in nonexistent physical memory, which crashes QEMU.
+    int 0x00
+
+idtdesc:
+    dw 0x3ff      ; Limit: 1 KiB for IDT
+    dd 0x80000000 ; Base: 2 GiB
+
+; Like most BIOSes, SeaBIOS requires this magic number to boot
+times 510-($-$$) db 0
+dw 0xaa55
+```