On 06/04/2018 11:48 AM, Paolo Bonzini wrote:
> On 02/06/2018 02:24, John Snow wrote:
>>> - if (s->bus->dma->ops->start_transfer) {
>>> - s->bus->dma->ops->start_transfer(s->bus->dma);
>>> + if (!s->bus->dma->ops->pio_transfer) {
>>> + s->end_transfer_func = end_transfer_func;
>>> + return;
>>> }
>>> + s->bus->dma->ops->pio_transfer(s->bus->dma);
>>> + end_transfer_func(s);
>> Does not setting s->end_transfer_func mess with some of our dumb hacks
>> in e.g. ide_restart_bh or ide_is_pio_out?
>
> No, ide_is_pio_out is not used by AHCI and ide_restart_bh looks at the
> flags passed to ide_handle_rw_error.
>
> Thanks,
>
> Paolo
>
Yes, that's right -- ide_restart_bh relies less on this now (thanks to
you, if I recall correctly) and ide_is_pio_out is only used by
ide_data_(read|write)[lw] ...
Hmm, it'd be nice to get rid of our reliance on ETF to determine state,
but that's nothing you've caused.
Reviewed-by: John Snow <[email protected]>
- [Qemu-block] [PATCH 0/6] atapi: change unlimited recursion t... Paolo Bonzini
- [Qemu-block] [PATCH 4/6] ide: make ide_transfer_stop id... Paolo Bonzini
- [Qemu-block] [PATCH 3/6] ide: call ide_cmd_done from id... Paolo Bonzini
- [Qemu-block] [PATCH 5/6] atapi: call ide_set_irq before... Paolo Bonzini
- [Qemu-block] [PATCH 2/6] ide: push end_transfer_func ou... Paolo Bonzini
- Re: [Qemu-block] [Qemu-devel] [PATCH 2/6] ide: push... John Snow
- Re: [Qemu-block] [Qemu-devel] [PATCH 2/6] ide: ... Paolo Bonzini
- Re: [Qemu-block] [Qemu-devel] [PATCH 2/6] i... John Snow
- [Qemu-block] [PATCH 1/6] ahci: move PIO Setup FIS befor... Paolo Bonzini
- Re: [Qemu-block] [Qemu-devel] [PATCH 1/6] ahci: mov... John Snow
- Re: [Qemu-block] [Qemu-devel] [PATCH 1/6] ahci:... Paolo Bonzini
- Re: [Qemu-block] [Qemu-devel] [PATCH 1/6] a... John Snow
- Re: [Qemu-block] [Qemu-devel] [PATCH 1... Paolo Bonzini
- [Qemu-block] [PATCH 6/6] ide: introduce ide_transfer_st... Paolo Bonzini
