xfs
[Top] [All Lists]

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

To: lachlan@xxxxxxx
Subject: Re: [Fwd: [PATCH] Fix race in xfs_write() between direct and buffered I/O with DMAPI]
From: Niv Sardi <xaiki@xxxxxxxxxxxxx>
Date: Wed, 24 Dec 2008 13:10:20 +1100
Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>, xfs-oss <xfs@xxxxxxxxxxx>
In-reply-to: <49518BF2.2020709@xxxxxxx> (Lachlan McIlroy's message of "Wed, 24 Dec 2008 12:10:10 +1100")
References: <493779B1.3010703@xxxxxxx> <20081208225125.GA15647@xxxxxxxxxxxxx> <493DFDBD.7060909@xxxxxxx> <20081209092240.GA23915@xxxxxxxxxxxxx> <20081222085311.GB24795@xxxxxxxxxxxxx> <49503378.2080508@xxxxxxx> <20081223084013.GA7604@xxxxxxxxxxxxx> <49518BF2.2020709@xxxxxxx>
User-agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.0.60 (i486-pc-linux-gnu)
Lachlan McIlroy <lachlan@xxxxxxx> writes:

> 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?

yes

http://www.opengroup.org/onlinepubs/9657099/chap3.htm#tagcjh_04_02_04


-- 
Niv Sardi

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