From: Shaya Potter <spotter@cs.columbia.edu>
To: Jamie Lokier <jamie@shareable.org>
Cc: Christoph Hellwig <hch@infradead.org>, linux-fsdevel@vger.kernel.org
Subject: Re: which dentry a page belongs to
Date: Fri, 23 Apr 2004 13:59:00 -0400 [thread overview]
Message-ID: <1082743140.1943.82.camel@zaphod> (raw)
In-Reply-To: <20040423173719.GB7335@mail.shareable.org>
On Fri, 2004-04-23 at 18:37 +0100, Jamie Lokier wrote:
> Shaya Potter wrote:
> > > you can be in writepage with page->mapping->i_mmap{,shared} beeing empty.
> > > No way in hell you'll ever get to a dentry.
> >
> > the question being in what cases will that happen, so I can make a
> > determination if I care about those cases. (i.e. if the dentry is
> > deleted, I don't particularly care, as since I am versioning, if it's
> > already been deleted, don't care)
> >
> > i.e. how can I determine where i_mmap{,shared} exist and when does't it?
> > (in file system page context).
>
> If you do mmap, then modify the pages, then munmap or exit, your
> ->writpage function is sometimes called _after_ that.
>
> That means you can get no vmas in i_mmap{,shared} when doing
> perfectly normal writable shared mappings.
just realized an insanely ugly solution would be for all mapped files to
map inode -> dentry (with code that makes sure they are still valid, i.e
if dentry gets deleted or renamed). Since the page always has it's
inode host, could figure it out via that. Since relatively few mapped
files (compared to amount of files on fs) shouldn't be a huge memory
overhead.
don't think that's going to be my solution though :)
next prev parent reply other threads:[~2004-04-23 17:59 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-04-23 14:57 which dentry a page belongs to Shaya Potter
2004-04-23 15:14 ` Jamie Lokier
2004-04-23 15:42 ` Shaya Potter
2004-04-23 16:37 ` Christoph Hellwig
2004-04-23 16:52 ` Shaya Potter
2004-04-23 17:01 ` Christoph Hellwig
2004-04-23 17:18 ` Shaya Potter
2004-04-23 17:22 ` Christoph Hellwig
2004-04-23 17:32 ` Shaya Potter
2004-04-23 17:37 ` Jamie Lokier
2004-04-23 17:59 ` Shaya Potter [this message]
2004-04-23 22:13 ` Jamie Lokier
2004-04-23 18:05 ` Shaya Potter
2004-04-23 21:37 ` Jamie Lokier
2004-04-23 22:26 ` Shaya Potter
2004-04-23 22:49 ` Jamie Lokier
2004-04-25 5:23 ` Shaya Potter
2004-04-25 23:22 ` Erez Zadok
2004-04-24 8:53 ` Jan Hudec
2004-04-24 8:44 ` Jan Hudec
2004-04-24 9:20 ` Christoph Hellwig
2004-04-24 9:32 ` Jan Hudec
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=1082743140.1943.82.camel@zaphod \
--to=spotter@cs.columbia.edu \
--cc=hch@infradead.org \
--cc=jamie@shareable.org \
--cc=linux-fsdevel@vger.kernel.org \
/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