diff options
| author | Christian Krinitsin <mail@krinitsin.com> | 2025-05-30 16:52:07 +0200 |
|---|---|---|
| committer | Christian Krinitsin <mail@krinitsin.com> | 2025-05-30 16:52:17 +0200 |
| commit | 9260319e7411ff8281700a532caa436f40120ec4 (patch) | |
| tree | 2f6bfe5f3458dd49d328d3a9eb508595450adec0 /gitlab/issues_text/target_missing/host_missing/accel_missing/2777 | |
| parent | 225caa38269323af1bfc2daadff5ec8bd930747f (diff) | |
| download | qemu-analysis-9260319e7411ff8281700a532caa436f40120ec4.tar.gz qemu-analysis-9260319e7411ff8281700a532caa436f40120ec4.zip | |
gitlab scraper: download in toml and text format
Diffstat (limited to 'gitlab/issues_text/target_missing/host_missing/accel_missing/2777')
| -rw-r--r-- | gitlab/issues_text/target_missing/host_missing/accel_missing/2777 | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/gitlab/issues_text/target_missing/host_missing/accel_missing/2777 b/gitlab/issues_text/target_missing/host_missing/accel_missing/2777 new file mode 100644 index 000000000..4c48c61e4 --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_missing/2777 @@ -0,0 +1,59 @@ +Assert failure in ahci-hd device +Description of problem: +Assert + +``` +qemu-system-x86_64: ../hw/ide/core.c:934: void ide_dma_cb(void *, int): Assertion `prep_size >= 0 && prep_size <= n * 512' failed. +``` +can be triggered with some qtest commands. This was found by fuzzing. +Steps to reproduce: +Command: + +``` +cat << EOF | ./qemu-system-x86_64 -display none -machine accel=qtest, -m 512M -machine q35 -nodefaults -drive file=null-co://,if=none,format=raw,id=disk0 -device ide-hd,drive=disk0 -qtest stdio +outl 0xcf8 0x8000fa24 +outl 0xcfc 0xe0000000 +outl 0xcf8 0x8000fa04 +outw 0xcfc 0x06 +write 0x0 0x1 0x27 +write 0x1 0x1 0x80 +write 0x2 0x1 0x25 +write 0xe00003b8 0x1 0x02 +write 0xe0000398 0x1 0x01 +EOF +``` + +Results in + +``` +[I 0.000001] OPENED +[R +0.076075] outl 0xcf8 0x8000fa24 +[S +0.076165] OK +OK +[R +0.076198] outl 0xcfc 0xe0000000 +[S +0.076242] OK +OK +[R +0.076320] outl 0xcf8 0x8000fa04 +[S +0.076344] OK +OK +[R +0.076379] outw 0xcfc 0x06 +[S +0.077676] OK +OK +[R +0.077760] write 0x0 0x1 0x27 +[S +0.079429] OK +OK +[R +0.079552] write 0x1 0x1 0x80 +[S +0.079592] OK +OK +[R +0.079618] write 0x2 0x1 0x25 +[S +0.079645] OK +OK +[R +0.079669] write 0xe00003b8 0x1 0x02 +[S +0.079709] OK +OK +[R +0.079733] write 0xe0000398 0x1 0x01 +qemu-system-x86_64: ../hw/ide/core.c:934: void ide_dma_cb(void *, int): Assertion `prep_size >= 0 && prep_size <= n * 512' failed. +Aborted +``` +Additional information: +Maybe we can just `goto eot;` instead of assert? |