From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34785) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZZLRf-0005wM-Na for qemu-devel@nongnu.org; Tue, 08 Sep 2015 12:08:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZZLRa-000297-SO for qemu-devel@nongnu.org; Tue, 08 Sep 2015 12:08:31 -0400 References: <1440546331-29087-1-git-send-email-jsnow@redhat.com> <1440546331-29087-2-git-send-email-jsnow@redhat.com> <55EDBD4F.7070204@redhat.com> From: John Snow Message-ID: <55EF0662.60703@redhat.com> Date: Tue, 8 Sep 2015 12:01:38 -0400 MIME-Version: 1.0 In-Reply-To: <55EDBD4F.7070204@redhat.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 1/1] ide: unify io_buffer_offset increments List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini , qemu-block@nongnu.org Cc: hare@suse.de, stefanha@redhat.com, qemu-devel@nongnu.org On 09/07/2015 12:37 PM, Paolo Bonzini wrote: > > > On 26/08/2015 01:45, John Snow wrote: >> IDEState's io_buffer_offset was originally added to keep track of offsets >> in AHCI rather exclusively, but it was added to IDEState instead of an >> AHCI-specific structure. > > Interesting to see something weird turn into feature. :) > There's lots of stuff in places where it doesn't really belong in the IDE universe, so it takes a while to sift through all the usages and start to straighten it all out. > Reviewed-by: Paolo Bonzini > Grazie. >> AHCI fakes all PIO transfers using DMA and a scatter-gather list. When >> the core or atapi layers invoke HBA-specific mechanisms for transfers, >> they do not always know that it is being backed by DMA or a sglist, so >> this offset is not always updated by the HBA code everywhere. >> >> If we modify it in dma_buf_commit, however, any HBA that needs to use >> this offset to manage operating on only part of a sglist will have >> access to it. >> >> This will fix ATAPI PIO transfers performed through the AHCI HBA, >> which were previously not modifying this value appropriately. >> >> This will fix ATAPI PIO transfers larger than one sector. > Thanks, applied to my IDE tree: https://github.com/jnsnow/qemu/commits/ide https://github.com/jnsnow/qemu.git --js