Re: mmap-related questions

From: Jakob Oestergaard (jakob@unthought.net)
Date: Wed Apr 02 2003 - 04:30:50 EST


On Tue, Apr 01, 2003 at 07:18:40PM -0800, Kenny Simpson wrote:
> --- Benjamin LaHaise <bcrl@redhat.com> wrote:
> > the act of unmapping them transfers the
> > dirty bit from the page
> > tables into the page cache where fsync() acts on
> > them.
> >
> Should this info be included with Mel Gorman's
> excellent doc:
> http://www.csn.ul.ie/~mel/projects/vm/guide/html/understand/node31.html#SECTION009411000000000000000
> Or is it there, but I missed it?
>
> > The
> > one case this breaks down
> > on is when the mmap()'d file is on NFS -- the
> > reordering there can result in
> > writebacks from mmap()s occuring in unexpected ways.
> I sometimes wish mmap was not supported on NFS, or at
> least require a special MAP_NFS flag be used. It has
> caused lots of pain over the years.

Could someone elaborate on this please?

If my client does
  big_map = mmap(... some file ...)
  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?

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 ?

Thanks,

-- 
................................................................
:   jakob@unthought.net   : And I see the elder races,         :
:.........................: putrid forms of man                :
:   Jakob Østergaard      : See him rise and claim the earth,  :
:        OZ9ABN           : his downfall is at hand.           :
:.........................:............{Konkhra}...............:
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Apr 07 2003 - 22:00:16 EST