[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200810081610.26768.nickpiggin@yahoo.com.au>
Date: Wed, 8 Oct 2008 16:10:26 +1100
From: Nick Piggin <nickpiggin@...oo.com.au>
To: Hisashi Hifumi <hifumi.hisashi@....ntt.co.jp>
Cc: Peter Zijlstra <a.p.zijlstra@...llo.nl>,
torvalds@...ux-foundation.org,
Andrew Morton <akpm@...ux-foundation.org>,
Andi Kleen <andi@...stfloor.org>, linux-kernel@...r.kernel.org,
linux-fsdevel@...r.kernel.org,
"Aneesh Kumar K.V" <aneesh.kumar@...ux.vnet.ibm.com>,
Theodore Ts'o <tytso@....edu>
Subject: Re: [RESEND] [PATCH] VFS: make file->f_pos access atomic on 32bit arch
On Wednesday 08 October 2008 15:48, Hisashi Hifumi wrote:
> At 11:35 08/10/08, Nick Piggin wrote:
> >On Wednesday 08 October 2008 05:59, Peter Zijlstra wrote:
> >> The whole point is that such usage is outside the specification and thus
> >> we don't strictly need to fix this.
> >>
> >> So the question Nick is asking is, do we want to slow down the kernel
> >> for a few broken user-space applications. Esp. since the race doesn't
> >> affect anybody else except the broken users of the file descriptor.
> >
> >Right you are. That's the fundamental question. The actual details of
> >the fix and how likely the race is don't really matter until we
> >answer the first question (except to say that the "fix" is never going
> >to be free).
>
> Simultaneous access by two or more writer can corrupt file content,
> so this case needs some locks(flock or fcntl) to preserve synchronization
> of file content. This is responsibility of user-space application.
Right.
> But file->f_pos race issue can occur even if multiple threads just read
> simultaneously. I think this is not responsibility of user-space
> application. To avoid this currently, an application needs some locks to
> protect file offset even if it just read a file. So I think f_pos race
> should be fixed.
What would they possibly hope to be reading, though? IOW. a read(2) still
*writes* to the fpos which userspace is very much aware of, and in exactly
the same way as write(2), so userspace should require the same obligations
to protect it in both cases I think. If you say they must protect file
content for writes, then it is valid to say that they must protect fd data
as well (ie. file offset).
--
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