From: Cyrill Gorcunov <gorcunov@gmail.com>
To: Andy Lutomirski <luto@amacapital.net>
Cc: Linux MM <linux-mm@kvack.org>,
LKML <linux-kernel@vger.kernel.org>,
Pavel Emelyanov <xemul@parallels.com>,
Andrew Morton <akpm@linux-foundation.org>,
Matt Mackall <mpm@selenic.com>,
Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com>,
Marcelo Tosatti <mtosatti@redhat.com>,
KOSAKI Motohiro <kosaki.motohiro@gmail.com>,
Stephen Rothwell <sfr@canb.auug.org.au>
Subject: Re: [PATCH] mm: Save soft-dirty bits on file pages
Date: Sat, 27 Jul 2013 01:18:44 +0400 [thread overview]
Message-ID: <20130726211844.GB8508@moon> (raw)
In-Reply-To: <CALCETrUJa-Y40vnb6YOPry0dCXb3zCQ0y19i2yHWdzKR75HUzg@mail.gmail.com>
On Fri, Jul 26, 2013 at 01:55:04PM -0700, Andy Lutomirski wrote:
> On Fri, Jul 26, 2013 at 1:18 PM, Cyrill Gorcunov <gorcunov@gmail.com> wrote:
> > Andy reported that if file page get reclaimed we loose soft-dirty bit
> > if it was there, so save _PAGE_BIT_SOFT_DIRTY bit when page address
> > get encoded into pte entry. Thus when #pf happens on such non-present
> > pte we can restore it back.
> >
>
> Unless I'm misunderstanding this, it's saving the bit in the
> non-present PTE. This sounds wrong -- what happens if the entire pmd
It's the same as encoding pgoff in pte entry (pte is not present),
but together with pgoff we save soft-bit status, later on #pf we decode
pgoff and restore softbit back if it was there, pte itself can't disappear
since it holds pgoff information.
> (or whatever the next level is called) gets zapped? (Also, what
> happens if you unmap a file and map a different file there?)
If file pages are remapped to a new place we remember softdity
bit status previously has and propagate it to a new pte (as in
install_file_pte, old ptes are cleared).
If file unmapped then new one mapped, pmd/ptes are cleared
(including softbit) and it remains clear until new write
happens, if only i've not missed something obvious.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: Cyrill Gorcunov <gorcunov@gmail.com>
To: Andy Lutomirski <luto@amacapital.net>
Cc: Linux MM <linux-mm@kvack.org>,
LKML <linux-kernel@vger.kernel.org>,
Pavel Emelyanov <xemul@parallels.com>,
Andrew Morton <akpm@linux-foundation.org>,
Matt Mackall <mpm@selenic.com>,
Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com>,
Marcelo Tosatti <mtosatti@redhat.com>,
KOSAKI Motohiro <kosaki.motohiro@gmail.com>,
Stephen Rothwell <sfr@canb.auug.org.au>
Subject: Re: [PATCH] mm: Save soft-dirty bits on file pages
Date: Sat, 27 Jul 2013 01:18:44 +0400 [thread overview]
Message-ID: <20130726211844.GB8508@moon> (raw)
In-Reply-To: <CALCETrUJa-Y40vnb6YOPry0dCXb3zCQ0y19i2yHWdzKR75HUzg@mail.gmail.com>
On Fri, Jul 26, 2013 at 01:55:04PM -0700, Andy Lutomirski wrote:
> On Fri, Jul 26, 2013 at 1:18 PM, Cyrill Gorcunov <gorcunov@gmail.com> wrote:
> > Andy reported that if file page get reclaimed we loose soft-dirty bit
> > if it was there, so save _PAGE_BIT_SOFT_DIRTY bit when page address
> > get encoded into pte entry. Thus when #pf happens on such non-present
> > pte we can restore it back.
> >
>
> Unless I'm misunderstanding this, it's saving the bit in the
> non-present PTE. This sounds wrong -- what happens if the entire pmd
It's the same as encoding pgoff in pte entry (pte is not present),
but together with pgoff we save soft-bit status, later on #pf we decode
pgoff and restore softbit back if it was there, pte itself can't disappear
since it holds pgoff information.
> (or whatever the next level is called) gets zapped? (Also, what
> happens if you unmap a file and map a different file there?)
If file pages are remapped to a new place we remember softdity
bit status previously has and propagate it to a new pte (as in
install_file_pte, old ptes are cleared).
If file unmapped then new one mapped, pmd/ptes are cleared
(including softbit) and it remains clear until new write
happens, if only i've not missed something obvious.
next prev parent reply other threads:[~2013-07-26 21:18 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-26 20:18 [PATCH] mm: Save soft-dirty bits on file pages Cyrill Gorcunov
2013-07-26 20:18 ` Cyrill Gorcunov
2013-07-26 20:55 ` Andy Lutomirski
2013-07-26 20:55 ` Andy Lutomirski
2013-07-26 21:18 ` Cyrill Gorcunov [this message]
2013-07-26 21:18 ` Cyrill Gorcunov
2013-07-26 21:36 ` Andy Lutomirski
2013-07-26 21:36 ` Andy Lutomirski
2013-07-27 6:25 ` Cyrill Gorcunov
2013-07-27 6:25 ` Cyrill Gorcunov
2013-07-27 17:06 ` Andy Lutomirski
2013-07-27 17:06 ` Andy Lutomirski
2013-07-27 21:01 ` Cyrill Gorcunov
2013-07-27 21:01 ` Cyrill Gorcunov
2013-07-27 19:29 ` Pavel Emelyanov
2013-07-27 19:29 ` Pavel Emelyanov
2013-07-28 9:28 ` Pavel Emelyanov
2013-07-28 9:28 ` Pavel Emelyanov
2013-07-29 14:08 ` Pavel Emelyanov
2013-07-29 14:08 ` Pavel Emelyanov
2013-07-29 14:14 ` Cyrill Gorcunov
2013-07-29 14:14 ` Cyrill Gorcunov
2013-07-29 14:24 ` Pavel Emelyanov
2013-07-29 14:24 ` Pavel Emelyanov
2013-07-29 14:36 ` Cyrill Gorcunov
2013-07-29 14:36 ` Cyrill Gorcunov
2013-07-29 14:58 ` Aneesh Kumar K.V
2013-07-29 14:58 ` Aneesh Kumar K.V
2013-07-29 15:02 ` Cyrill Gorcunov
2013-07-29 15:02 ` Cyrill Gorcunov
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=20130726211844.GB8508@moon \
--to=gorcunov@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=kosaki.motohiro@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=luto@amacapital.net \
--cc=mpm@selenic.com \
--cc=mtosatti@redhat.com \
--cc=sfr@canb.auug.org.au \
--cc=xemul@parallels.com \
--cc=xiaoguangrong@linux.vnet.ibm.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 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.