2013-08-20 15:31:36

by Cyrill Gorcunov

[permalink] [raw]
Subject: [PATCH -mm] docs: Document soft dirty behaviour for freshly created memory regions

Signed-off-by: Cyrill Gorcunov <[email protected]>
Cc: Pavel Emelyanov <[email protected]>
Cc: Andy Lutomirski <[email protected]>
Cc: Andrew Morton <[email protected]>
Cc: Matt Mackall <[email protected]>
Cc: Xiao Guangrong <[email protected]>
Cc: Marcelo Tosatti <[email protected]>
Cc: KOSAKI Motohiro <[email protected]>
Cc: Stephen Rothwell <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: "Aneesh Kumar K.V" <[email protected]>
---
Documentation/vm/soft-dirty.txt | 7 +++++++
1 file changed, 7 insertions(+)

Index: linux-2.6.git/Documentation/vm/soft-dirty.txt
===================================================================
--- linux-2.6.git.orig/Documentation/vm/soft-dirty.txt
+++ linux-2.6.git/Documentation/vm/soft-dirty.txt
@@ -28,6 +28,13 @@ This is so, since the pages are still ma
the kernel does is finds this fact out and puts both writable and soft-dirty
bits on the PTE.

+ While in most cases tracking memory changes by #PF-s is more than enough
+there is still a scenario when we can loose soft dirty bit -- a task does
+unmap previously mapped memory region and then maps new one exactly at the
+same place. When unmap called the kernel internally clears PTEs values
+including soft dirty bit. To notify user space application about such
+memory region renewal the kernel always mark new memory regions (and
+expanded regions) as soft dirtified.

This feature is actively used by the checkpoint-restore project. You
can find more details about it on http://criu.org


2013-08-20 16:57:56

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH -mm] docs: Document soft dirty behaviour for freshly created memory regions

On 08/20/13 08:31, Cyrill Gorcunov wrote:
> Signed-off-by: Cyrill Gorcunov <[email protected]>
> Cc: Pavel Emelyanov <[email protected]>
> Cc: Andy Lutomirski <[email protected]>
> Cc: Andrew Morton <[email protected]>
> Cc: Matt Mackall <[email protected]>
> Cc: Xiao Guangrong <[email protected]>
> Cc: Marcelo Tosatti <[email protected]>
> Cc: KOSAKI Motohiro <[email protected]>
> Cc: Stephen Rothwell <[email protected]>
> Cc: Peter Zijlstra <[email protected]>
> Cc: "Aneesh Kumar K.V" <[email protected]>
> ---
> Documentation/vm/soft-dirty.txt | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> Index: linux-2.6.git/Documentation/vm/soft-dirty.txt
> ===================================================================
> --- linux-2.6.git.orig/Documentation/vm/soft-dirty.txt
> +++ linux-2.6.git/Documentation/vm/soft-dirty.txt
> @@ -28,6 +28,13 @@ This is so, since the pages are still ma
> the kernel does is finds this fact out and puts both writable and soft-dirty
> bits on the PTE.
>
> + While in most cases tracking memory changes by #PF-s is more than enough
enough,

> +there is still a scenario when we can loose soft dirty bit -- a task does
lose soft dirty bits -- a task

> +unmap previously mapped memory region and then maps new one exactly at the

unmaps a previously mapped memory region and then maps a new one at exactly the

> +same place. When unmap called the kernel internally clears PTEs values

When unmap is called, the kernel internally clears PTE values

> +including soft dirty bit. To notify user space application about such
bits.

> +memory region renewal the kernel always mark new memory regions (and
marks

> +expanded regions) as soft dirtified.

or: as soft dirty.

>
> This feature is actively used by the checkpoint-restore project. You
> can find more details about it on http://criu.org
> --


--
~Randy

2013-08-20 17:01:10

by Cyrill Gorcunov

[permalink] [raw]
Subject: Re: [PATCH -mm] docs: Document soft dirty behaviour for freshly created memory regions

On Tue, Aug 20, 2013 at 09:57:38AM -0700, Randy Dunlap wrote:
> >
> > + While in most cases tracking memory changes by #PF-s is more than enough
> enough,

?

For the rest -- thanks a LOT Randy, I'll update.

2013-08-20 17:06:33

by Cyrill Gorcunov

[permalink] [raw]
Subject: [PATCH -mm] docs: Document soft dirty behaviour for freshly created memory regions, v2

Here is updated one, thanks again.

---
From: Cyrill Gorcunov <[email protected]>
Subject: [PATCH] docs: Document soft dirty behaviour for freshly created memory regions

Signed-off-by: Cyrill Gorcunov <[email protected]>
Cc: Pavel Emelyanov <[email protected]>
Cc: Andy Lutomirski <[email protected]>
Cc: Andrew Morton <[email protected]>
Cc: Matt Mackall <[email protected]>
Cc: Xiao Guangrong <[email protected]>
Cc: Marcelo Tosatti <[email protected]>
Cc: KOSAKI Motohiro <[email protected]>
Cc: Stephen Rothwell <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: "Aneesh Kumar K.V" <[email protected]>
Cc: Randy Dunlap <[email protected]>
---
Documentation/vm/soft-dirty.txt | 7 +++++++
1 file changed, 7 insertions(+)

Index: linux-2.6.git/Documentation/vm/soft-dirty.txt
===================================================================
--- linux-2.6.git.orig/Documentation/vm/soft-dirty.txt
+++ linux-2.6.git/Documentation/vm/soft-dirty.txt
@@ -28,6 +28,13 @@ This is so, since the pages are still ma
the kernel does is finds this fact out and puts both writable and soft-dirty
bits on the PTE.

+ While in most cases tracking memory changes by #PF-s is more than enough
+there is still a scenario when we can lose soft dirty bits -- a task
+unmaps a previously mapped memory region and then maps a new one at exactly
+the same place. When unmap is called, the kernel internally clears PTE values
+including soft dirty bits. To notify user space application about such
+memory region renewal the kernel always marks new memory regions (and
+expanded regions) as soft dirty.

This feature is actively used by the checkpoint-restore project. You
can find more details about it on http://criu.org

2013-08-20 17:25:30

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH -mm] docs: Document soft dirty behaviour for freshly created memory regions

On 08/20/13 10:01, Cyrill Gorcunov wrote:
> On Tue, Aug 20, 2013 at 09:57:38AM -0700, Randy Dunlap wrote:
>>>
>>> + While in most cases tracking memory changes by #PF-s is more than enough
>> enough,
>
> ?

Long introductory phrases usually merit a comma after them.

>
> For the rest -- thanks a LOT Randy, I'll update.
> --



--
~Randy

2013-08-20 18:13:11

by Cyrill Gorcunov

[permalink] [raw]
Subject: [PATCH -mm] docs: Document soft dirty behaviour for freshly created memory regions, v3

On Tue, Aug 20, 2013 at 10:25:11AM -0700, Randy Dunlap wrote:
>
> Long introductory phrases usually merit a comma after them.

Ah, I see, thanks!
---
From: Cyrill Gorcunov <[email protected]>
Subject: [PATCH] docs: Document soft dirty behaviour for freshly created memory regions

Signed-off-by: Cyrill Gorcunov <[email protected]>
Cc: Pavel Emelyanov <[email protected]>
Cc: Andy Lutomirski <[email protected]>
Cc: Andrew Morton <[email protected]>
Cc: Matt Mackall <[email protected]>
Cc: Xiao Guangrong <[email protected]>
Cc: Marcelo Tosatti <[email protected]>
Cc: KOSAKI Motohiro <[email protected]>
Cc: Stephen Rothwell <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: "Aneesh Kumar K.V" <[email protected]>
Cc: Randy Dunlap <[email protected]>
---
Documentation/vm/soft-dirty.txt | 7 +++++++
1 file changed, 7 insertions(+)

Index: linux-2.6.git/Documentation/vm/soft-dirty.txt
===================================================================
--- linux-2.6.git.orig/Documentation/vm/soft-dirty.txt
+++ linux-2.6.git/Documentation/vm/soft-dirty.txt
@@ -28,6 +28,13 @@ This is so, since the pages are still ma
the kernel does is finds this fact out and puts both writable and soft-dirty
bits on the PTE.

+ While in most cases tracking memory changes by #PF-s is more than enough,
+there is still a scenario when we can lose soft dirty bits -- a task
+unmaps a previously mapped memory region and then maps a new one at exactly
+the same place. When unmap is called, the kernel internally clears PTE values
+including soft dirty bits. To notify user space application about such
+memory region renewal the kernel always marks new memory regions (and
+expanded regions) as soft dirty.

This feature is actively used by the checkpoint-restore project. You
can find more details about it on http://criu.org

2013-08-20 21:15:58

by Rob Landley

[permalink] [raw]
Subject: Re: [PATCH -mm] docs: Document soft dirty behaviour for freshly created memory regions

On 08/20/2013 10:31:32 AM, Cyrill Gorcunov wrote:
> Signed-off-by: Cyrill Gorcunov <[email protected]>
> Cc: Pavel Emelyanov <[email protected]>
> Cc: Andy Lutomirski <[email protected]>
> Cc: Andrew Morton <[email protected]>
> Cc: Matt Mackall <[email protected]>
> Cc: Xiao Guangrong <[email protected]>
> Cc: Marcelo Tosatti <[email protected]>
> Cc: KOSAKI Motohiro <[email protected]>
> Cc: Stephen Rothwell <[email protected]>
> Cc: Peter Zijlstra <[email protected]>
> Cc: "Aneesh Kumar K.V" <[email protected]>

With that cc: list, I'll assume you do _not_ want the Documentation
maintainer paying attention to it.

Rob-

2013-08-20 21:43:28

by Cyrill Gorcunov

[permalink] [raw]
Subject: Re: [PATCH -mm] docs: Document soft dirty behaviour for freshly created memory regions

On Tue, Aug 20, 2013 at 04:15:53PM -0500, Rob Landley wrote:
> On 08/20/2013 10:31:32 AM, Cyrill Gorcunov wrote:
> >Signed-off-by: Cyrill Gorcunov <[email protected]>
> >Cc: Pavel Emelyanov <[email protected]>
> >Cc: Andy Lutomirski <[email protected]>
> >Cc: Andrew Morton <[email protected]>
> >Cc: Matt Mackall <[email protected]>
> >Cc: Xiao Guangrong <[email protected]>
> >Cc: Marcelo Tosatti <[email protected]>
> >Cc: KOSAKI Motohiro <[email protected]>
> >Cc: Stephen Rothwell <[email protected]>
> >Cc: Peter Zijlstra <[email protected]>
> >Cc: "Aneesh Kumar K.V" <[email protected]>
>
> With that cc: list, I'll assume you do _not_ want the Documentation
> maintainer paying attention to it.

Hmm, I must admit I don't know whis else list should be CC'ed.