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>,
	qemu-devel@nongnu.org, qemu-ppc@nongnu.org, kwolf@redhat.com,
	stefanha@redhat.com, agraf@suse.de
Subject: Re: [Qemu-devel] [RFC 0/2] macio: split out unaligned DMA access into separate functions
Date: Tue, 19 May 2015 22:17:51 +0100	[thread overview]
Message-ID: <555BA87F.3060408@ilande.co.uk> (raw)
In-Reply-To: <555BA4B6.3030101@redhat.com>

On 19/05/15 22:01, John Snow wrote:

>> Thanks John. Even though you haven't managed to figure out the problem
>> the patchset attempts to solve, were you at least able to reproduce the
>> image corruption locally?
>>
>> That said, the patchset is still worth including just for the fact that
>> it fixes the flaky CDROM detection here.
>>
>>
>> ATB,
>>
>> Mark.
>>
> 
> Yeah, I reproduced the problem you're describing and spent a chunk of my
> time debugging it and trying to figure out a section of the trace that
> coincides with "the problem," but was unable to find anything of
> particular interest.

Well that's definitely a good start :)  I did spend some time enabling
tracepoints on the block layer for both good and bad commits, and the
only obvious difference I could see was the batching between multiple
read/write requests.

> I do notice that sometimes we appear to start a new transfer almost
> immediately after one completes, but the code in place to sleep that
> action until the guest finishes programming the DMA command seems to
> catch it and nothing gets maliciously perturbed.
> 
> I still wonder somewhat that with the move to async and the strange
> order of how darwin appears to program DMA transfers that we're hitting
> some weird race, but I think that how reliably I hit the exact same
> problem means that I should think again :)
> 
> I'll keep poking.

The only other thing I had in the back of my mind was whether the async
code needs some kind of extra write barrier implemented when used in
this way. Unfortunately I haven't had a chance to dig into the block
layer to figure out how to attempt this yet.


ATB,

Mark.

  reply	other threads:[~2015-05-19 21:18 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-09 22:24 [Qemu-devel] [RFC 0/2] macio: split out unaligned DMA access into separate functions Mark Cave-Ayland
2015-03-09 22:24 ` [Qemu-devel] [RFC 1/2] macio: move unaligned DMA read code into separate pmac_dma_read() function Mark Cave-Ayland
2015-03-09 22:24 ` [Qemu-devel] [RFC 2/2] macio: move unaligned DMA write code into separate pmac_dma_write() function Mark Cave-Ayland
2015-03-17  7:23 ` [Qemu-devel] [RFC 0/2] macio: split out unaligned DMA access into separate functions Alexander Graf
2015-04-28 20:57   ` Mark Cave-Ayland
2015-04-28 21:07     ` John Snow
2015-04-28 21:13       ` Mark Cave-Ayland
2015-03-17 15:23 ` Stefan Hajnoczi
2015-05-18 19:54 ` John Snow
2015-05-19 20:50   ` Mark Cave-Ayland
2015-05-19 21:01     ` John Snow
2015-05-19 21:17       ` Mark Cave-Ayland [this message]
2015-05-22 17:55 ` John Snow
2015-05-22 18:16   ` Mark Cave-Ayland
2015-05-22 18:20     ` John Snow
2015-05-22 19:52       ` Mark Cave-Ayland
2015-05-31 19:54       ` Mark Cave-Ayland
2015-06-01 15:57         ` 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=555BA87F.3060408@ilande.co.uk \
    --to=mark.cave-ayland@ilande.co.uk \
    --cc=agraf@suse.de \
    --cc=jsnow@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    --cc=stefanha@redhat.com \
    /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.