diff options
Diffstat (limited to 'gitlab/issues/target_missing/host_missing/accel_missing/2686.toml')
| -rw-r--r-- | gitlab/issues/target_missing/host_missing/accel_missing/2686.toml | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/gitlab/issues/target_missing/host_missing/accel_missing/2686.toml b/gitlab/issues/target_missing/host_missing/accel_missing/2686.toml new file mode 100644 index 000000000..a71ed31fe --- /dev/null +++ b/gitlab/issues/target_missing/host_missing/accel_missing/2686.toml @@ -0,0 +1,58 @@ +id = 2686 +title = "rng-seed addition causing test_loongarch64_virt.py to hang in EFI startup" +state = "closed" +created_at = "2024-11-18T19:53:27.441Z" +closed_at = "2024-12-03T18:00:27.975Z" +labels = ["kind::Bug", "workflow::Patch available"] +url = "https://gitlab.com/qemu-project/qemu/-/issues/2686" +host-os = "Fedora 41" +host-arch = "x86_64" +qemu-version = "git d9bd1ccbf1d84d872aed684c65fec33814b8ac1b" +guest-os = "n/a" +guest-arch = "n/a" +description = """Since the rng-seed addition, the test_loongarch64_virt.py test will periodically hang. + +git bisect blames this + +``` +commit d9bd1ccbf1d84d872aed684c65fec33814b8ac1b +Author: Jason A. Donenfeld <Jason@zx2c4.com> +Date: Thu Sep 5 17:33:16 2024 +0200 + + hw/loongarch: virt: pass random seed to fdt + + If the FDT contains /chosen/rng-seed, then the Linux RNG will use it to + initialize early. Set this using the usual guest random number + generation function. + + This is the same procedure that's done in b91b6b5a2c ("hw/microblaze: + pass random seed to fdt"), e4b4f0b71c ("hw/riscv: virt: pass random seed + to fdt"), c6fe3e6b4c ("hw/openrisc: virt: pass random seed to fdt"), + 67f7e426e5 ("hw/i386: pass RNG seed via setup_data entry"), c287941a4d + ("hw/rx: pass random seed to fdt"), 5e19cc68fb ("hw/mips: boston: pass + random seed to fdt"), 6b23a67916 ("hw/nios2: virt: pass random seed to fdt") + c4b075318e ("hw/ppc: pass random seed to fdt"), and 5242876f37 + ("hw/arm/virt: dt: add rng-seed property"). + + These earlier commits later were amended to rerandomize the RNG seed on + snapshot load, but the LoongArch code somehow already does that, despite + not having this patch here, presumably due to some lucky copy and + pasting. + + Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> + Reviewed-by: Song Gao <gaosong@loongson.cn> + Message-Id: <20240905153316.2038769-1-Jason@zx2c4.com> + Signed-off-by: Song Gao <gaosong@loongson.cn> +``` + +When it hangs, test_loongarch64_virt.py will get stuck waiting for serial console output from the guest. + +Looking at the console.log file shows it to be completely empty. + +This appears to indicate it has hung before EDK has even initialized, as it has not even printed the 'Entering C environment' message""" +reproduce = """1. ./configure --target-list=loongarch64-softmmu +2. make -j 20 +3. n=0 ; while true ; do n=$(expr $n + 1); echo $n ; QEMU_TEST_QEMU_BINARY=./build/qemu-system-loongarch64 PYTHONPATH=./python ./tests/functional/test_loongarch64_virt.py ; done + +Most commonly it will hang within 10 iterations, very occasionally needing upto 25""" +additional = "n/a" |