summary refs log tree commit diff stats
path: root/gitlab/issues_text/target_i386/host_missing/accel_missing/1131
diff options
context:
space:
mode:
authorChristian Krinitsin <mail@krinitsin.com>2025-05-30 16:52:07 +0200
committerChristian Krinitsin <mail@krinitsin.com>2025-05-30 16:52:17 +0200
commit9260319e7411ff8281700a532caa436f40120ec4 (patch)
tree2f6bfe5f3458dd49d328d3a9eb508595450adec0 /gitlab/issues_text/target_i386/host_missing/accel_missing/1131
parent225caa38269323af1bfc2daadff5ec8bd930747f (diff)
downloadqemu-analysis-9260319e7411ff8281700a532caa436f40120ec4.tar.gz
qemu-analysis-9260319e7411ff8281700a532caa436f40120ec4.zip
gitlab scraper: download in toml and text format
Diffstat (limited to 'gitlab/issues_text/target_i386/host_missing/accel_missing/1131')
-rw-r--r--gitlab/issues_text/target_i386/host_missing/accel_missing/113120
1 files changed, 20 insertions, 0 deletions
diff --git a/gitlab/issues_text/target_i386/host_missing/accel_missing/1131 b/gitlab/issues_text/target_i386/host_missing/accel_missing/1131
new file mode 100644
index 000000000..20c2a8d87
--- /dev/null
+++ b/gitlab/issues_text/target_i386/host_missing/accel_missing/1131
@@ -0,0 +1,20 @@
+Multiboot: could not move values from provided mmap to another address directly.
+Description of problem:
+When using `-kernel` to load a Multiboot file which requires a memory map(MULTIBOOT_MEMORY_INFO flag) and trying to move the values in the provided mmap entries to another address directly, QEMU reboots.
+```c
+xxx = mmap->addr;
+```
+
+When moving with volatile, everything works well:
+```c
+volatile unsigned long long addr = mmap->addr;
+xxx = addr;
+```
+Steps to reproduce:
+1. Source code here: [github/xtexChooser/toop/boot/multiboot/src/multiboot.c](https://github.com/xtexChooser/toop/blob/51153319d4f2320ae9a9277ffffad3f67a335fe9/boot/multiboot/src/multiboot.c#L32)
+2. Minimized reproduce: [gist.github.com/xtexChooser/22017d662c8144b7abcb0b18c2afb09c](https://gist.github.com/xtexChooser/22017d662c8144b7abcb0b18c2afb09c)
+3. I am sure that 0x00001210 is writable, it is empty in the memory map and QEMU works correctly when writing a zero value to here.
+4. The reproducer is available without any module, when it works, it should keep running without any output, if QEMU reboots, the screen should flash as it clears and prints the BIOS information again.
+5. If move with volatile(as the `multiboot_works.c` in reproducer), the reproducer works correctly.
+Additional information:
+#