All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
To: John Snow <jsnow@redhat.com>,
	agraf@suse.de, qemu-devel@nongnu.org, qemu-ppc@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 0/4] macio: change DMA methods over to offset/len implementation
Date: Tue, 02 Jun 2015 00:18:42 +0100	[thread overview]
Message-ID: <556CE852.1030901@ilande.co.uk> (raw)
In-Reply-To: <556CE630.4000308@redhat.com>

On 02/06/15 00:09, John Snow wrote:

> On 05/31/2015 04:05 PM, Mark Cave-Ayland wrote:
>> This patchset follows on from my recent work on fixing issues with the
>> macio controller, and remodels the new pmac_dma_read() and pmac_dma_write()
>> functions in a similar manner to the unaligned block functions.
>>
>> With this in place, long chains of overlapping unaligned requests as used
>> by OS X/Darwin will now work correctly without introducting torn sector
>> errors when writing to disk.
>>
>> Also included are some tidy-ups as a result of the above changes.
>>
>> Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
>>
>> Mark Cave-Ayland (4):
>>   macio: switch pmac_dma_read() over to new offset/len implementation
>>   macio: switch pmac_dma_write() over to new offset/len implementation
>>   macio: update comment/constants to reflect the new code
>>   macio: remove remainder_len DBDMA_io property
>>
>>  hw/ide/macio.c             |  271 +++++++++++++++++---------------------------
>>  include/hw/ppc/mac_dbdma.h |    4 +-
>>  2 files changed, 105 insertions(+), 170 deletions(-)
>>
> 
> More 32/64bit printf string problems:
> 
> macio.c:81:  sector_num is int64_t (PRId64)
> macio.c:93:  sector_num
>              head_bytes is size_t (%zu)
> macio.c:107: sector_num
>              tail_bytes is size_t (%zu)
> macio.c:147: sector_num
> macio.c:160: sector_num
> macio.c:178: sector_num

Ah oops. Do you need me to correct? And do you have a quick way of
testing a 32-bit build on a 64-bit OS? (-m32)?

> But that's an unsatisfying response, so how about:
> 
> Tested-by: John Snow <jsnow@redhat.com>
> 
> Fixes the problem as far as I can tell. I'll comb it in a little more
> detail later. Have you tested this patchset with OSX et al to make sure
> it doesn't introduce any obvious regression on that side of things?

Most of the work was done on Darwin (which definitely does unaligned
accesses) and I booted an OS X CDROM through to the point where the hard
disk started installing, so I'm reasonably confident in the patch. And
more so that it's based upon the existing block alignment code in io.c.

Basically the point of fixing up the -M g3beige/mac99 loadvm/savevm
(which is almost there except for DBDMA) in the last release was to help
debug this. At least I could get to a point where I could start QEMU
with -loadvm, run a single cp command and then md5 the results to check
for errors rather than having to wait for an entire OS install.


ATB,

Mark.

  reply	other threads:[~2015-06-01 23:19 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-31 20:05 [Qemu-devel] [PATCH 0/4] macio: change DMA methods over to offset/len implementation Mark Cave-Ayland
2015-05-31 20:05 ` [Qemu-devel] [PATCH 1/4] macio: switch pmac_dma_read() over to new " Mark Cave-Ayland
2015-06-02 20:02   ` John Snow
2015-05-31 20:05 ` [Qemu-devel] [PATCH 2/4] macio: switch pmac_dma_write() " Mark Cave-Ayland
2015-05-31 20:05 ` [Qemu-devel] [PATCH 3/4] macio: update comment/constants to reflect the new code Mark Cave-Ayland
2015-05-31 20:05 ` [Qemu-devel] [PATCH 4/4] macio: remove remainder_len DBDMA_io property Mark Cave-Ayland
2015-06-01 23:09 ` [Qemu-devel] [PATCH 0/4] macio: change DMA methods over to offset/len implementation John Snow
2015-06-01 23:18   ` Mark Cave-Ayland [this message]
2015-06-01 23:25     ` John Snow
2015-06-02  7:28     ` Laurent Vivier
2015-06-02 20:03 ` John Snow

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=556CE852.1030901@ilande.co.uk \
    --to=mark.cave-ayland@ilande.co.uk \
    --cc=agraf@suse.de \
    --cc=jsnow@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.