On 10/7/20 12:00 PM, Alex Bennée wrote:
A recent change to weak reset handling broke replay due to the use of
aio_bh_schedule_oneshot instead of the replay aware
replay_bh_schedule_oneshot_event.

Fixes: 55adb3c456 ("ide: cancel pending callbacks on SRST")
Suggested-by: Pavel Dovgalyuk <pavel.dovgal...@ispras.ru>
Signed-off-by: Alex Bennée <alex.ben...@linaro.org>
---
  hw/ide/core.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/hw/ide/core.c b/hw/ide/core.c
index 0e32abd779..693b352d5e 100644
--- a/hw/ide/core.c
+++ b/hw/ide/core.c
@@ -2289,8 +2289,8 @@ void ide_ctrl_write(void *opaque, uint32_t addr, uint32_t 
val)
              s = &bus->ifs[i];
              s->status |= BUSY_STAT;
          }
-        aio_bh_schedule_oneshot(qemu_get_aio_context(),
-                                ide_bus_perform_srst, bus);
+        replay_bh_schedule_oneshot_event(qemu_get_aio_context(),
+                                         ide_bus_perform_srst, bus);
      }
bus->cmd = val;


Reviewed-by: John Snow <js...@redhat.com>
Acked-by: John Snow <js...@redhat.com>


Reply via email to