From: Rohit Seth <rohit.seth@intel.com>
To: Hugh Dickins <hugh@veritas.com>
Cc: Andrew Morton <akpm@osdl.org>,
linux-kernel@vger.kernel.org, torvalds@osdl.org, agl@us.ibm.com
Subject: Re: [PATCH]: Handling spurious page fault for hugetlb region for 2.6.14-rc4-git5
Date: Wed, 19 Oct 2005 18:36:47 -0700 [thread overview]
Message-ID: <1129772207.339.152.camel@akash.sc.intel.com> (raw)
In-Reply-To: <1129765996.339.138.camel@akash.sc.intel.com>
On Wed, 2005-10-19 at 16:53 -0700, Rohit Seth wrote:
> On Wed, 2005-10-19 at 21:28 +0100, Hugh Dickins wrote:
> > On Wed, 19 Oct 2005, Andrew Morton wrote:
> > > Hugh Dickins <hugh@veritas.com> wrote:
> > > >
> > > > I was forgetting that extending ftruncate wasn't supported in 2.6.14 and
> > > > earlier, yes. But I'm afraid the above scenario can still happen there:
> > > > extending is done, not by ftruncate, but by (somewhere else) mmapping the
> > > > larger size. So your fix may still cause a tight infinite fault loop.
> > >
> > > Will it? Whenever we mmap a hugetlbfs file we prepopulate the entire vma
> > > with hugepages. So I don't think there's ever any part of an address space
> > > which ia a) inside a hugepage vma and b) doesn't have a hugepage backing
> > > it.
> >
> > The new vma, sure, will be fully populated. But the old vma, in this
> > or some other process, which was created before the hugetlbfs file was
> > truncated down, will be left with a hole at the end.
> >
>
> Excellent catch. This broken truncation thing....
>
> And I don't know what the right solution should be for this scenario at
> this point for 2.6.14....may be to actually look at the HUGEPTE
> corresponding to the hugetlb faulting address or don't allow mmaps to
> grow the hugetlb file bigger (except the first mmap). I understand that
> both of them don't sound too good...
>
> Any suggestions.
>
I would like to keep this patch. This at least takes care of bad things
happening behind application's back by OS/HW. If the scenario that you
mentioned happens then the application is knowingly doing unsupported
things (at this point truncate is a broken operation on hugetlb). The
application can be killed in this case.
...trying to avoid any heavy changes at this time for 2.6.14
-rohit
next prev parent reply other threads:[~2005-10-20 1:29 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-10-18 21:15 [PATCH]: Handling spurious page fault for hugetlb region for 2.6.14-rc4-git5 Seth, Rohit
2005-10-18 21:34 ` Andrew Morton
2005-10-18 22:17 ` Rohit Seth
2005-10-19 0:25 ` Andrew Morton
2005-10-19 3:25 ` Rohit Seth
2005-10-19 4:07 ` Andrew Morton
2005-10-19 14:33 ` Adam Litke
2005-10-19 15:48 ` Hugh Dickins
2005-10-19 19:05 ` Rohit Seth
2005-10-19 20:00 ` Hugh Dickins
2005-10-19 20:19 ` Andrew Morton
2005-10-19 20:28 ` Hugh Dickins
2005-10-19 23:53 ` Rohit Seth
2005-10-20 1:36 ` Rohit Seth [this message]
2005-10-20 1:37 ` Andrew Morton
2005-10-20 6:17 ` Hugh Dickins
2005-10-19 15:23 ` Hugh Dickins
2005-10-19 18:47 ` Rohit Seth
2005-10-19 20:53 ` Linus Torvalds
2005-10-19 21:59 ` Tony Luck
2005-10-20 0:05 ` Rohit Seth
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=1129772207.339.152.camel@akash.sc.intel.com \
--to=rohit.seth@intel.com \
--cc=agl@us.ibm.com \
--cc=akpm@osdl.org \
--cc=hugh@veritas.com \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@osdl.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