[Top] [All Lists]

Re: [Fwd: [PATCH] Fix race in xfs_write() between direct and buffered I/

To: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Subject: Re: [Fwd: [PATCH] Fix race in xfs_write() between direct and buffered I/O with DMAPI]
From: Lachlan McIlroy <lachlan@xxxxxxx>
Date: Wed, 24 Dec 2008 12:10:10 +1100
Cc: xfs-oss <xfs@xxxxxxxxxxx>
In-reply-to: <20081223084013.GA7604@xxxxxxxxxxxxx>
Organization: SGI
References: <493779B1.3010703@xxxxxxx> <20081208225125.GA15647@xxxxxxxxxxxxx> <493DFDBD.7060909@xxxxxxx> <20081209092240.GA23915@xxxxxxxxxxxxx> <20081222085311.GB24795@xxxxxxxxxxxxx> <49503378.2080508@xxxxxxx> <20081223084013.GA7604@xxxxxxxxxxxxx>
Reply-to: lachlan@xxxxxxx
User-agent: Thunderbird (X11/20081105)
Christoph Hellwig wrote:
On Tue, Dec 23, 2008 at 11:40:24AM +1100, Lachlan McIlroy wrote:
Christoph Hellwig wrote:
Do you need more input on this one?
Actually I just might.  Based on your last reponse I wasn't sure if
you wanted me to make further changes.

Well, my reponse was that I think we could do it more effecient, but the
patch still looks correct to me.
Okay great.  I'll check it in and we can improve it later when I understand
what you meant!

Then I got side-tracked wondering
why we even have the 'goto retry' in the dmapi post event - why retry the
write if we get ENOSPC when we don't if dmapi is not enabled?  Could the
write get stuck in an infinite loop?

We only retry on ENOSPC if the dmapi nospace even is enabled, or am I
missing something?
I don't think you're missing anything here.  I don't understand how the
DMAPI stuff works but I imagined the event was there to indicate that the
write failed but what I don't understand is why that justifies a retry.
Is there something about DMAPI that needs the write to succeed?

<Prev in Thread] Current Thread [Next in Thread>