diff options
author | Alex Bennée <alex.bennee@linaro.org> | 2020-10-07 17:00:19 +0100 |
---|---|---|
committer | Alex Bennée <alex.bennee@linaro.org> | 2020-10-09 17:27:55 +0100 |
commit | de00b8b3768c2f854065ab1269bd6d68af3d2263 (patch) | |
tree | 76b2f9db1d88ee73fb28331865845503b04ca6aa /hw/ide | |
parent | 42a052333a6d31fa74b3f8c152bc433d869e09c4 (diff) |
hw/ide: restore replay support of IDE
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.dovgalyuk@ispras.ru>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: John Snow <jsnow@redhat.com>
Acked-by: John Snow <jsnow@redhat.com>
Message-Id: <20201007160038.26953-4-alex.bennee@linaro.org>
Diffstat (limited to 'hw/ide')
-rw-r--r-- | hw/ide/core.c | 4 |
1 files 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; |