diff options
author | Paolo Bonzini | 2018-06-06 21:09:55 +0200 |
---|---|---|
committer | John Snow | 2018-06-08 19:36:31 +0200 |
commit | c173723f247c69974a83af1395020d0f01a0d334 (patch) | |
tree | 6951a90343b7720974921c64b48dc157f24dd98b /hw/core/or-irq.c | |
parent | atapi: call ide_set_irq before ide_transfer_start (diff) | |
download | qemu-c173723f247c69974a83af1395020d0f01a0d334.tar.gz qemu-c173723f247c69974a83af1395020d0f01a0d334.tar.xz qemu-c173723f247c69974a83af1395020d0f01a0d334.zip |
ide: introduce ide_transfer_start_norecurse
For the case where the end_transfer_func is also the caller of
ide_transfer_start, the mutual recursion can lead to unlimited
stack usage. Introduce a new version that can be used to change
tail recursion into a loop, and use it in trace_ide_atapi_cmd_reply_end.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-id: 20180606190955.20845-8-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com>
Diffstat (limited to 'hw/core/or-irq.c')
0 files changed, 0 insertions, 0 deletions