[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080128145047.1b40655d@core>
Date: Mon, 28 Jan 2008 14:50:47 +0000
From: Alan Cox <alan@...rguk.ukuu.org.uk>
To: Andi Kleen <ak@...e.de>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Trond Myklebust <Trond.Myklebust@...app.com>,
Steve French <smfrench@...il.com>, swhiteho@...hat.com,
sfrench@...ba.org, vandrove@...cvut.cz,
linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org
Subject: Re: [PATCH] [8/18] BKL-removal: Remove BKL from remote_llseek
On Mon, 28 Jan 2008 15:10:34 +0100
Andi Kleen <ak@...e.de> wrote:
> On Monday 28 January 2008 14:38:57 Alan Cox wrote:
> > > Also worse really fixing it would be a major change to the VFS
> > > because of the way ->read/write are defined :/
> >
> > I don't see a problem there. ->read and ->write update the passed pointer
> > which is not the real f_pos anyway. Just the copies need fixing.
>
> They are effectually doing a decoupled read/modify/write cycle. e.g.:
>
> A B
>
> read fpos
>
> read fpos
>
> fpos += A fpos += B
> write fpos
>
>
> write fpos
>
> So you get overlapping reads. Probably not good.
No unix system I'm aware of cares about the read/write positioning during
parallel simultaneous reads or writes, with the exception of O_APPEND
which is strictly defined. The problem case is getting fpos != either
valid value.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists