public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Benjamin LaHaise <bcrl@redhat.com>
To: Jakob Oestergaard <jakob@unthought.net>,
	Kenny Simpson <theonetruekenny@yahoo.com>,
	linux-kernel@vger.kernel.org
Subject: Re: mmap-related questions
Date: Wed, 2 Apr 2003 10:10:06 -0500	[thread overview]
Message-ID: <20030402101006.A30582@redhat.com> (raw)
In-Reply-To: <20030402093049.GB17859@unthought.net>; from jakob@unthought.net on Wed, Apr 02, 2003 at 11:30:50AM +0200

On Wed, Apr 02, 2003 at 11:30:50AM +0200, Jakob Oestergaard wrote:
>   make_dirty(big_map)
>   msync(first half of big_map)
>   msync(second half of big_map)    { crash during this }
> 
> Then I am guaranteed that (unless the server crashes), the first half of
> big_map *will* have reached the server, but not that all of the second
> half has.   Right?

Assuming you used MS_SYNC for the msync() flags.  MS_ASYNC could still be 
proceeding to flush the pages out in the background.  And the kernel may 
have triggered writeback of the second half -- it is free to do so as it 
sees fit.

> Like any local-disk backed file.
> 
> Ignoring the case where the NFS *server* crashes, where could the write
> ordering differ, compared to local disk files ?

> In other words, what does Benjamin's "unexpected ways" refer to ?

All local clients will see the mmap() being updated from the time it is 
dirtied, but there is no ordering of write()s with respect to the mmap 
unless you explicitely msync(..MS_SYNC..) as in your example.

		-ben
-- 
Junk email?  <a href="mailto:aart@kvack.org">aart@kvack.org</a>

  reply	other threads:[~2003-04-02 14:58 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-31 14:41 mmap-related questions Kenny Simpson
2003-03-31 17:55 ` Benjamin LaHaise
2003-04-01  3:25   ` Kenny Simpson
2003-04-01 17:50     ` Benjamin LaHaise
2003-04-02  3:18       ` Kenny Simpson
2003-04-02  9:30         ` Jakob Oestergaard
2003-04-02 15:10           ` Benjamin LaHaise [this message]
2003-04-02 23:43             ` Jakob Oestergaard

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=20030402101006.A30582@redhat.com \
    --to=bcrl@redhat.com \
    --cc=jakob@unthought.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=theonetruekenny@yahoo.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox