All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jamie Lokier <jamie@shareable.org>
To: Martin Mares <mj@ucw.cz>
Cc: Michal Hocko <mhocko@suse.cz>, Meelis Roos <mroos@linux.ee>,
	Linux Kernel list <linux-kernel@vger.kernel.org>,
	linux-fsdevel@vger.kernel.org
Subject: Re: file offset corruption on 32-bit machines?
Date: Thu, 10 Apr 2008 16:14:06 +0100	[thread overview]
Message-ID: <20080410151406.GA17051@shareable.org> (raw)
In-Reply-To: <mj+md-20080410.140857.3331.nikam@ucw.cz>

Martin Mares wrote:
> > [*] file_pos_{read,write} (fs/read_write.c) are not called under
> > lock (in sys_read, sys_write, ...), so even if f_pos is written
> > atomically, you will be able to get races when accessing shared
> > descriptor from different threads.
> 
> There are however cases when such behavior is perfectly valid: For example
> you can have a file of records of a fixed size, whose order does not matter.
> Then multiple processes can produce the records in parallel, sharing
> a single fd.

A rather more common thing:

Does this problem apply when appending lines or records to a log file,
with or without O_APPEND?

Also, can this problem affect programs doing concurrent reads/writes
using pread/pwrite (or the AIO equivalents)?

-- Jamie

  parent reply	other threads:[~2008-04-10 15:14 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-08  8:05 file offset corruption on 32-bit machines? Meelis Roos
2008-04-10 13:55 ` Michal Hocko
2008-04-10 14:01   ` Jiri Kosina
2008-04-10 14:27     ` Jan Kara
2008-04-10 14:31       ` Jiri Kosina
2008-04-10 14:48         ` Matthew Wilcox
2008-04-10 15:22           ` Jan Kara
2008-04-10 15:30             ` Matthew Wilcox
2008-04-10 15:19         ` Jan Kara
2008-04-10 15:37           ` Michal Hocko
2008-04-10 15:56             ` Jan Kara
2008-04-10 16:03         ` Diego Calleja
2008-04-10 16:03           ` Diego Calleja
2008-04-10 16:15           ` Jan Kara
2008-04-11 19:26       ` Pavel Machek
2008-04-14 16:25         ` Jan Kara
2008-04-10 14:31     ` Michal Hocko
2008-04-10 14:35       ` Jiri Kosina
2008-04-10 14:11   ` Martin Mares
2008-04-10 15:12     ` Jan Kara
2008-04-10 15:14     ` Jamie Lokier [this message]
2008-04-10 15:21       ` Matthew Wilcox
2008-04-10 15:28       ` Jan Kara
2008-04-10 15:33   ` Andi Kleen
     [not found] <agh4d-6yc-35@gated-at.bofh.it>
     [not found] ` <ah5tY-3lR-7@gated-at.bofh.it>
     [not found]   ` <ah5DA-3X9-9@gated-at.bofh.it>
     [not found]     ` <ah5X5-4tl-13@gated-at.bofh.it>
     [not found]       ` <ah66A-4Nk-7@gated-at.bofh.it>
     [not found]         ` <ah7vN-7Wz-9@gated-at.bofh.it>
2008-04-11 12:24           ` Bodo Eggert
2008-04-11 12:24             ` Bodo Eggert
2008-04-11 13:55             ` Lennart Sorensen
2008-04-11 16:59               ` Bryan Henderson
2008-04-11 17:15                 ` Lennart Sorensen
2008-04-11 21:29                   ` Bryan Henderson
2008-04-12  8:48                   ` Pavel Machek
2008-04-14 16:20               ` Jan Kara
2008-04-14 16:22                 ` Lennart Sorensen
2008-04-14 16:53                   ` Jan Kara
2008-04-14 16:54                     ` Alan Cox
2008-04-14 18:34                       ` Alexey Dobriyan
2008-04-14 17:06                     ` Lennart Sorensen
2008-04-14 19:03                       ` Jan Kara
2008-04-14 19:29                         ` Lennart Sorensen
2008-04-14 19:42                           ` Jan Kara
2008-04-14 19:45                             ` Lennart Sorensen
2008-04-15  8:57                           ` Pavel Machek
2008-04-15 15:32                             ` Lennart Sorensen
2008-04-15 17:34                               ` Pavel Machek
2008-04-15 18:24                                 ` Lennart Sorensen
2008-04-15 19:12                                   ` Pavel Machek
2008-04-15 19:49                                     ` Lennart Sorensen
2008-04-15 20:06                                       ` Pavel Machek
2008-04-15 20:28                                         ` Peter Zijlstra
2008-04-16  8:15                                           ` Pavel Machek
2008-04-16  8:20                                             ` Peter Zijlstra
2008-04-16 10:54                                             ` Alan Cox
2008-04-16 13:57                                             ` Lennart Sorensen
2008-04-15 20:29                                         ` Lennart Sorensen
2008-04-15 22:11                                           ` Bryan Henderson
2008-04-16  9:40                                             ` Jamie Lokier

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=20080410151406.GA17051@shareable.org \
    --to=jamie@shareable.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mhocko@suse.cz \
    --cc=mj@ucw.cz \
    --cc=mroos@linux.ee \
    /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.