From: ralph gonzalez <rgonzale@ibl.bm>
To: nfs@lists.sourceforge.net
Subject: Re: Force client page cache invalidation?
Date: Wed, 25 Feb 2004 10:05:05 -0400 [thread overview]
Message-ID: <403CAB91.1030208@ibl.bm> (raw)
[snip]
>> Linux 2.4.22-10mdk (nfs utils 1.0.5) seems to be unwilling to reload the
>> file cache *when another application already has the file mmapped*.
>
> Which is quite sane semantics for mmap().
Agreed...
[snip]
>>*Question*: Instead, is there a way to force the client to reload the
>
> file cache (exclusively for this file)? (So when we subsequently
> close/open the file in each application asynchronously, they see the
> correct pages.) Maybe there's a simple option or utility I'm missing?
>
> Linux does not support this sort of kludge and is unlikely to do so for
> the near future. The VM simply cannot support it.
>
> In any case, the fact is that strict POSIX mmap() semantics assume
> exclusive access to the file on the server while it is mapped on a given
> client. If you're not providing that, then you are going to be prone to
> some nasty races whether or not the cache invalidation works like Solaris
> does.
I wasn't aware of the POSIX semantics. It's a shame, since we've been
using this approach -- multiple readers and single writer -- on Solaris
for 8 years with excellent stability and performance. When we switched to
Linux we found this unexpected and unfriendly behavior:
If NFS client has the file mmapped while it is edited on the server,
and the client then opens a second application which mmaps the file
(without closing the first application), then no matter what you do
-- close both clients, etc -- the file cache never releases the old
pages!
--
Ralph Gonzalez
rgonzale@ibl.bm
-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
_______________________________________________
NFS maillist - NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs
next reply other threads:[~2004-02-25 14:06 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-25 14:05 ralph gonzalez [this message]
-- strict thread matches above, loose matches on Subject: below --
2004-02-24 18:30 Force client page cache invalidation? ralph gonzalez
2004-02-24 20:06 ` trond.myklebust
2004-02-26 8:57 ` Olaf Kirch
2004-02-26 12:35 ` trond.myklebust
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=403CAB91.1030208@ibl.bm \
--to=rgonzale@ibl.bm \
--cc=nfs@lists.sourceforge.net \
/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.