Bin Meng bc6f28995f hw/sd: sdhci: Correctly set the controller status for ADMA
When an ADMA transfer is started, the codes forget to set the
controller status to indicate a transfer is in progress.

With this fix, the following 2 reproducers:

https://paste.debian.net/plain/1185136
https://paste.debian.net/plain/1185141

cannot be reproduced with the following QEMU command line:

$ qemu-system-x86_64 -nographic -machine accel=qtest -m 512M \
      -nodefaults -device sdhci-pci,sd-spec-version=3 \
      -drive if=sd,index=0,file=null-co://,format=raw,id=mydrive \
      -device sd-card,drive=mydrive -qtest stdio

Cc: qemu-stable@nongnu.org
Fixes: CVE-2020-17380
Fixes: CVE-2020-25085
Fixes: CVE-2021-3409
Fixes: d7dfca0807a0 ("hw/sdhci: introduce standard SD host controller")
Reported-by: Alexander Bulekov <alxndr@bu.edu>
Reported-by: Cornelius Aschermann (Ruhr-Universität Bochum)
Reported-by: Sergej Schumilo (Ruhr-Universität Bochum)
Reported-by: Simon Wörner (Ruhr-Universität Bochum)
Buglink: https://bugs.launchpad.net/qemu/+bug/1892960
Buglink: https://bugs.launchpad.net/qemu/+bug/1909418
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=1928146
Tested-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Message-Id: <20210303122639.20004-4-bmeng.cn@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2021-03-22 16:56:13 +01:00
..
2020-12-10 12:15:18 -05:00
2021-03-18 19:00:50 +00:00
2021-03-10 13:57:31 +00:00
2021-03-18 09:22:55 +00:00
2021-03-18 09:22:55 +00:00
2021-03-19 18:01:17 +00:00
2021-01-08 15:13:38 +00:00
2021-03-15 21:03:06 +01:00
2020-12-10 12:15:08 -05:00
2020-08-21 06:30:25 -04:00
2020-08-27 14:04:55 -04:00
2021-03-18 09:22:55 +00:00
2021-03-18 09:22:55 +00:00
2020-12-10 12:15:08 -05:00
2021-03-18 09:22:55 +00:00
2020-08-21 06:30:33 -04:00
2021-03-15 17:01:17 +01:00
2021-02-05 08:52:58 -05:00
2020-08-21 06:30:33 -04:00