linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
@ 2014-12-04 22:58 Chen Gang
  2014-12-05  0:14 ` Darrick J. Wong
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Chen Gang @ 2014-12-04 22:58 UTC (permalink / raw)
  To: akpm@linux-foundation.org, rth@twiddle.net,
	ink@jurassic.park.msu.ru, mattst88@gmail.com, Ralf Baechle,
	jejb@parisc-linux.org, deller@gmx.de, chris@zankel.net,
	jcmvbkbc@gmail.com, Arnd Bergmann, minchan
  Cc: linux-kernel@vger.kernel.org, linux-arch, linux-api

For uapi, need try to let all macros have same value, and MADV_FREE is
added into main branch recently, so need redefine MADV_FREE for it.

At present, '8' can be shared with all architectures, so redefine it to
'8'.

Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
---
 arch/alpha/include/uapi/asm/mman.h     | 2 +-
 arch/mips/include/uapi/asm/mman.h      | 2 +-
 arch/parisc/include/uapi/asm/mman.h    | 2 +-
 arch/xtensa/include/uapi/asm/mman.h    | 2 +-
 include/uapi/asm-generic/mman-common.h | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/arch/alpha/include/uapi/asm/mman.h b/arch/alpha/include/uapi/asm/mman.h
index 836fbd4..0b8a5de 100644
--- a/arch/alpha/include/uapi/asm/mman.h
+++ b/arch/alpha/include/uapi/asm/mman.h
@@ -44,9 +44,9 @@
 #define MADV_WILLNEED	3		/* will need these pages */
 #define	MADV_SPACEAVAIL	5		/* ensure resources are available */
 #define MADV_DONTNEED	6		/* don't need these pages */
-#define MADV_FREE	7		/* free pages only if memory pressure */
 
 /* common/generic parameters */
+#define MADV_FREE	8		/* free pages only if memory pressure */
 #define MADV_REMOVE	9		/* remove these pages & resources */
 #define MADV_DONTFORK	10		/* don't inherit across fork */
 #define MADV_DOFORK	11		/* do inherit across fork */
diff --git a/arch/mips/include/uapi/asm/mman.h b/arch/mips/include/uapi/asm/mman.h
index 106e741..d247f54 100644
--- a/arch/mips/include/uapi/asm/mman.h
+++ b/arch/mips/include/uapi/asm/mman.h
@@ -67,9 +67,9 @@
 #define MADV_SEQUENTIAL 2		/* expect sequential page references */
 #define MADV_WILLNEED	3		/* will need these pages */
 #define MADV_DONTNEED	4		/* don't need these pages */
-#define MADV_FREE	5		/* free pages only if memory pressure */
 
 /* common parameters: try to keep these consistent across architectures */
+#define MADV_FREE	8		/* free pages only if memory pressure */
 #define MADV_REMOVE	9		/* remove these pages & resources */
 #define MADV_DONTFORK	10		/* don't inherit across fork */
 #define MADV_DOFORK	11		/* do inherit across fork */
diff --git a/arch/parisc/include/uapi/asm/mman.h b/arch/parisc/include/uapi/asm/mman.h
index 6cb8db7..700d83f 100644
--- a/arch/parisc/include/uapi/asm/mman.h
+++ b/arch/parisc/include/uapi/asm/mman.h
@@ -40,9 +40,9 @@
 #define MADV_SPACEAVAIL 5               /* insure that resources are reserved */
 #define MADV_VPS_PURGE  6               /* Purge pages from VM page cache */
 #define MADV_VPS_INHERIT 7              /* Inherit parents page size */
-#define MADV_FREE	8		/* free pages only if memory pressure */
 
 /* common/generic parameters */
+#define MADV_FREE	8		/* free pages only if memory pressure */
 #define MADV_REMOVE	9		/* remove these pages & resources */
 #define MADV_DONTFORK	10		/* don't inherit across fork */
 #define MADV_DOFORK	11		/* do inherit across fork */
diff --git a/arch/xtensa/include/uapi/asm/mman.h b/arch/xtensa/include/uapi/asm/mman.h
index 1b19f25..77eaca4 100644
--- a/arch/xtensa/include/uapi/asm/mman.h
+++ b/arch/xtensa/include/uapi/asm/mman.h
@@ -80,9 +80,9 @@
 #define MADV_SEQUENTIAL	2		/* expect sequential page references */
 #define MADV_WILLNEED	3		/* will need these pages */
 #define MADV_DONTNEED	4		/* don't need these pages */
-#define MADV_FREE	5		/* free pages only if memory pressure */
 
 /* common parameters: try to keep these consistent across architectures */
+#define MADV_FREE	8		/* free pages only if memory pressure */
 #define MADV_REMOVE	9		/* remove these pages & resources */
 #define MADV_DONTFORK	10		/* don't inherit across fork */
 #define MADV_DOFORK	11		/* do inherit across fork */
diff --git a/include/uapi/asm-generic/mman-common.h b/include/uapi/asm-generic/mman-common.h
index 7a94102..8695959 100644
--- a/include/uapi/asm-generic/mman-common.h
+++ b/include/uapi/asm-generic/mman-common.h
@@ -34,9 +34,9 @@
 #define MADV_SEQUENTIAL	2		/* expect sequential page references */
 #define MADV_WILLNEED	3		/* will need these pages */
 #define MADV_DONTNEED	4		/* don't need these pages */
-#define MADV_FREE	5		/* free pages only if memory pressure */
 
 /* common parameters: try to keep these consistent across architectures */
+#define MADV_FREE	8		/* free pages only if memory pressure */
 #define MADV_REMOVE	9		/* remove these pages & resources */
 #define MADV_DONTFORK	10		/* don't inherit across fork */
 #define MADV_DOFORK	11		/* do inherit across fork */
-- 
1.9.3

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
  2014-12-04 22:58 [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures Chen Gang
@ 2014-12-05  0:14 ` Darrick J. Wong
  2014-12-05 21:51   ` Chen Gang
  2014-12-05  6:54 ` Minchan Kim
  2015-10-28  7:18 ` Minchan Kim
  2 siblings, 1 reply; 12+ messages in thread
From: Darrick J. Wong @ 2014-12-05  0:14 UTC (permalink / raw)
  To: Chen Gang
  Cc: akpm@linux-foundation.org, rth@twiddle.net,
	ink@jurassic.park.msu.ru, mattst88@gmail.com, Ralf Baechle,
	jejb@parisc-linux.org, deller@gmx.de, chris@zankel.net,
	jcmvbkbc@gmail.com, Arnd Bergmann, minchan,
	linux-kernel@vger.kernel.org, linux-arch, linux-api

On Fri, Dec 05, 2014 at 06:58:29AM +0800, Chen Gang wrote:
> For uapi, need try to let all macros have same value, and MADV_FREE is
> added into main branch recently, so need redefine MADV_FREE for it.
> 
> At present, '8' can be shared with all architectures, so redefine it to
> '8'.

Hmmm... you might want to talk to the dietlibc people if you do this:

$ grep -rn MADV_FREE /usr/include/
/usr/include/diet/sys/mman.h:101:#define MADV_FREE      0x5             /* (Solaris) contents can be freed */

Though the sole definition only exists on sparc/powerpc/powerpc64, so who
knows...

--D

> 
> Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
> ---
>  arch/alpha/include/uapi/asm/mman.h     | 2 +-
>  arch/mips/include/uapi/asm/mman.h      | 2 +-
>  arch/parisc/include/uapi/asm/mman.h    | 2 +-
>  arch/xtensa/include/uapi/asm/mman.h    | 2 +-
>  include/uapi/asm-generic/mman-common.h | 2 +-
>  5 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/alpha/include/uapi/asm/mman.h b/arch/alpha/include/uapi/asm/mman.h
> index 836fbd4..0b8a5de 100644
> --- a/arch/alpha/include/uapi/asm/mman.h
> +++ b/arch/alpha/include/uapi/asm/mman.h
> @@ -44,9 +44,9 @@
>  #define MADV_WILLNEED	3		/* will need these pages */
>  #define	MADV_SPACEAVAIL	5		/* ensure resources are available */
>  #define MADV_DONTNEED	6		/* don't need these pages */
> -#define MADV_FREE	7		/* free pages only if memory pressure */
>  
>  /* common/generic parameters */
> +#define MADV_FREE	8		/* free pages only if memory pressure */
>  #define MADV_REMOVE	9		/* remove these pages & resources */
>  #define MADV_DONTFORK	10		/* don't inherit across fork */
>  #define MADV_DOFORK	11		/* do inherit across fork */
> diff --git a/arch/mips/include/uapi/asm/mman.h b/arch/mips/include/uapi/asm/mman.h
> index 106e741..d247f54 100644
> --- a/arch/mips/include/uapi/asm/mman.h
> +++ b/arch/mips/include/uapi/asm/mman.h
> @@ -67,9 +67,9 @@
>  #define MADV_SEQUENTIAL 2		/* expect sequential page references */
>  #define MADV_WILLNEED	3		/* will need these pages */
>  #define MADV_DONTNEED	4		/* don't need these pages */
> -#define MADV_FREE	5		/* free pages only if memory pressure */
>  
>  /* common parameters: try to keep these consistent across architectures */
> +#define MADV_FREE	8		/* free pages only if memory pressure */
>  #define MADV_REMOVE	9		/* remove these pages & resources */
>  #define MADV_DONTFORK	10		/* don't inherit across fork */
>  #define MADV_DOFORK	11		/* do inherit across fork */
> diff --git a/arch/parisc/include/uapi/asm/mman.h b/arch/parisc/include/uapi/asm/mman.h
> index 6cb8db7..700d83f 100644
> --- a/arch/parisc/include/uapi/asm/mman.h
> +++ b/arch/parisc/include/uapi/asm/mman.h
> @@ -40,9 +40,9 @@
>  #define MADV_SPACEAVAIL 5               /* insure that resources are reserved */
>  #define MADV_VPS_PURGE  6               /* Purge pages from VM page cache */
>  #define MADV_VPS_INHERIT 7              /* Inherit parents page size */
> -#define MADV_FREE	8		/* free pages only if memory pressure */
>  
>  /* common/generic parameters */
> +#define MADV_FREE	8		/* free pages only if memory pressure */
>  #define MADV_REMOVE	9		/* remove these pages & resources */
>  #define MADV_DONTFORK	10		/* don't inherit across fork */
>  #define MADV_DOFORK	11		/* do inherit across fork */
> diff --git a/arch/xtensa/include/uapi/asm/mman.h b/arch/xtensa/include/uapi/asm/mman.h
> index 1b19f25..77eaca4 100644
> --- a/arch/xtensa/include/uapi/asm/mman.h
> +++ b/arch/xtensa/include/uapi/asm/mman.h
> @@ -80,9 +80,9 @@
>  #define MADV_SEQUENTIAL	2		/* expect sequential page references */
>  #define MADV_WILLNEED	3		/* will need these pages */
>  #define MADV_DONTNEED	4		/* don't need these pages */
> -#define MADV_FREE	5		/* free pages only if memory pressure */
>  
>  /* common parameters: try to keep these consistent across architectures */
> +#define MADV_FREE	8		/* free pages only if memory pressure */
>  #define MADV_REMOVE	9		/* remove these pages & resources */
>  #define MADV_DONTFORK	10		/* don't inherit across fork */
>  #define MADV_DOFORK	11		/* do inherit across fork */
> diff --git a/include/uapi/asm-generic/mman-common.h b/include/uapi/asm-generic/mman-common.h
> index 7a94102..8695959 100644
> --- a/include/uapi/asm-generic/mman-common.h
> +++ b/include/uapi/asm-generic/mman-common.h
> @@ -34,9 +34,9 @@
>  #define MADV_SEQUENTIAL	2		/* expect sequential page references */
>  #define MADV_WILLNEED	3		/* will need these pages */
>  #define MADV_DONTNEED	4		/* don't need these pages */
> -#define MADV_FREE	5		/* free pages only if memory pressure */
>  
>  /* common parameters: try to keep these consistent across architectures */
> +#define MADV_FREE	8		/* free pages only if memory pressure */
>  #define MADV_REMOVE	9		/* remove these pages & resources */
>  #define MADV_DONTFORK	10		/* don't inherit across fork */
>  #define MADV_DOFORK	11		/* do inherit across fork */
> -- 
> 1.9.3
> --
> To unsubscribe from this list: send the line "unsubscribe linux-api" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
  2014-12-04 22:58 [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures Chen Gang
  2014-12-05  0:14 ` Darrick J. Wong
@ 2014-12-05  6:54 ` Minchan Kim
  2014-12-05 22:00   ` Chen Gang
  2015-10-28  7:18 ` Minchan Kim
  2 siblings, 1 reply; 12+ messages in thread
From: Minchan Kim @ 2014-12-05  6:54 UTC (permalink / raw)
  To: Chen Gang
  Cc: akpm@linux-foundation.org, rth@twiddle.net,
	ink@jurassic.park.msu.ru, mattst88@gmail.com, Ralf Baechle,
	jejb@parisc-linux.org, deller@gmx.de, chris@zankel.net,
	jcmvbkbc@gmail.com, Arnd Bergmann, linux-kernel@vger.kernel.org,
	linux-arch, linux-api

On Fri, Dec 05, 2014 at 06:58:29AM +0800, Chen Gang wrote:
> For uapi, need try to let all macros have same value, and MADV_FREE is
> added into main branch recently, so need redefine MADV_FREE for it.
> 
> At present, '8' can be shared with all architectures, so redefine it to
> '8'.
> 
> Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>


Hello Chen,

Thanks for looking at this.
Feel free to add my sign.

Acked-by: Minchan Kim <minchan@kernel.org>

-- 
Kind regards,
Minchan Kim

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
  2014-12-05  0:14 ` Darrick J. Wong
@ 2014-12-05 21:51   ` Chen Gang
  0 siblings, 0 replies; 12+ messages in thread
From: Chen Gang @ 2014-12-05 21:51 UTC (permalink / raw)
  To: Darrick J. Wong
  Cc: akpm@linux-foundation.org, rth@twiddle.net,
	ink@jurassic.park.msu.ru, mattst88@gmail.com, Ralf Baechle,
	jejb@parisc-linux.org, deller@gmx.de, chris@zankel.net,
	jcmvbkbc@gmail.com, Arnd Bergmann, minchan,
	linux-kernel@vger.kernel.org, linux-arch, linux-api

On 12/05/2014 08:14 AM, Darrick J. Wong wrote:
> On Fri, Dec 05, 2014 at 06:58:29AM +0800, Chen Gang wrote:
>> For uapi, need try to let all macros have same value, and MADV_FREE is
>> added into main branch recently, so need redefine MADV_FREE for it.
>>
>> At present, '8' can be shared with all architectures, so redefine it to
>> '8'.
> 
> Hmmm... you might want to talk to the dietlibc people if you do this:
> 
> $ grep -rn MADV_FREE /usr/include/
> /usr/include/diet/sys/mman.h:101:#define MADV_FREE      0x5             /* (Solaris) contents can be freed */
> 
> Though the sole definition only exists on sparc/powerpc/powerpc64, so who
> knows...
>

Excuse me, I am not quite familiar about dietlibc. If possible, please
help forward this mail to them, and Cc me (if necessary).

Thanks.
-- 
Chen Gang

Open share and attitude like air water and life which God blessed

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
  2014-12-05  6:54 ` Minchan Kim
@ 2014-12-05 22:00   ` Chen Gang
  2014-12-06 15:57     ` Chen Gang
  2014-12-10  1:45     ` Chen Gang
  0 siblings, 2 replies; 12+ messages in thread
From: Chen Gang @ 2014-12-05 22:00 UTC (permalink / raw)
  To: Minchan Kim
  Cc: akpm@linux-foundation.org, rth@twiddle.net,
	ink@jurassic.park.msu.ru, mattst88@gmail.com, Ralf Baechle,
	jejb@parisc-linux.org, deller@gmx.de, chris@zankel.net,
	jcmvbkbc@gmail.com, Arnd Bergmann, linux-kernel@vger.kernel.org,
	linux-arch, linux-api, Geert Uytterhoeven, Carlos O'Donell

On 12/05/2014 02:54 PM, Minchan Kim wrote:
> On Fri, Dec 05, 2014 at 06:58:29AM +0800, Chen Gang wrote:
>> For uapi, need try to let all macros have same value, and MADV_FREE is
>> added into main branch recently, so need redefine MADV_FREE for it.
>>
>> At present, '8' can be shared with all architectures, so redefine it to
>> '8'.
>>
>> Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
> 
> 
> Hello Chen,
> 
> Thanks for looking at this.
> Feel free to add my sign.
> 
> Acked-by: Minchan Kim <minchan@kernel.org>
> 

OK, thanks.

Originally I sent the same patch like you sent (but later than yours).
Geert suggested to use same value for MADV_FREE, and Carlos confirmed
it and suggested more things (sorry, I forgot to Cc them in this mail).


Thanks.
-- 
Chen Gang

Open share and attitude like air water and life which God blessed

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
  2014-12-05 22:00   ` Chen Gang
@ 2014-12-06 15:57     ` Chen Gang
  2014-12-07 16:14       ` John David Anglin
  2014-12-24 15:27       ` Chen Gang
  2014-12-10  1:45     ` Chen Gang
  1 sibling, 2 replies; 12+ messages in thread
From: Chen Gang @ 2014-12-06 15:57 UTC (permalink / raw)
  To: jejb@parisc-linux.org
  Cc: linux-kernel@vger.kernel.org, linux-parisc@vger.kernel.org,
	Joel Brobecker

Hello Maintainers:

After this patch, our parisc can pass allmodconfig in linux next tree,
for me, we can say parisc specific code have no touch for allmodconfig.
:-)

But for parisc gcc latest upstream compiler, I found several issues, and
I shall try to analyse them and communicate with gcc related members.

And I also want to consult about parisc assembly instructions, I can not
find the related reference documents, could you help to have a check (or
provide some related information for it)? related contents are below:

  parisc support several store instructions: 'stb' (for store byte),
  'stw(m)' (for store word), and 'std' (for store double word).

  They should be in the same format in binary code, and have neighbour
  numbers, and 'stw(m)' need be in the middle of 'stb' and 'std'. one
  sample for the instruction 'inst' (it is 'unsigned int'):

   - for ((inst >> 26) != 0x3):

     stb: 0x18, or 0x19,
     stw: 0x1a, stwm: 0x1b,
     std: 0x1c.

   - else ((inst >> 26) == 0x3), need check '(inst >> 6) & 0xf':

     stb: 0x08, or 0x09,
     stw: 0x0a,
     std: 0x0b.

  it is about my binutils/gdb patch for parisc, gdb want to recognize
  'st??' to find the position for saving relate context (registers).


Welcome any suggestions, ideas, and completions.

Thanks.


On 12/06/2014 06:00 AM, Chen Gang wrote:
> On 12/05/2014 02:54 PM, Minchan Kim wrote:
>> On Fri, Dec 05, 2014 at 06:58:29AM +0800, Chen Gang wrote:
>>> For uapi, need try to let all macros have same value, and MADV_FREE is
>>> added into main branch recently, so need redefine MADV_FREE for it.
>>>
>>> At present, '8' can be shared with all architectures, so redefine it to
>>> '8'.
>>>
>>> Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
>>
>>
>> Hello Chen,
>>
>> Thanks for looking at this.
>> Feel free to add my sign.
>>
>> Acked-by: Minchan Kim <minchan@kernel.org>
>>
> 
> OK, thanks.
> 
> Originally I sent the same patch like you sent (but later than yours).
> Geert suggested to use same value for MADV_FREE, and Carlos confirmed
> it and suggested more things (sorry, I forgot to Cc them in this mail).
> 
> 
> Thanks.
> 


-- 
Chen Gang

Open share and attitude like air water and life which God blessed

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
  2014-12-06 15:57     ` Chen Gang
@ 2014-12-07 16:14       ` John David Anglin
  2014-12-07 22:35         ` Chen Gang
  2014-12-24 15:27       ` Chen Gang
  1 sibling, 1 reply; 12+ messages in thread
From: John David Anglin @ 2014-12-07 16:14 UTC (permalink / raw)
  To: Chen Gang
  Cc: jejb@parisc-linux.org, linux-kernel@vger.kernel.org,
	linux-parisc@vger.kernel.org, Joel Brobecker

On 6-Dec-14, at 10:57 AM, Chen Gang wrote:

> And I also want to consult about parisc assembly instructions, I can  
> not
> find the related reference documents, could you help to have a check  
> (or
> provide some related information for it)? related contents are below:

https://parisc.wiki.kernel.org/index.php/Technical_Documentation

Dave
--
John David Anglin	dave.anglin@bell.net




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
  2014-12-07 16:14       ` John David Anglin
@ 2014-12-07 22:35         ` Chen Gang
  0 siblings, 0 replies; 12+ messages in thread
From: Chen Gang @ 2014-12-07 22:35 UTC (permalink / raw)
  To: John David Anglin
  Cc: jejb@parisc-linux.org, linux-kernel@vger.kernel.org,
	linux-parisc@vger.kernel.org, Joel Brobecker


On 12/8/14 00:14, John David Anglin wrote:
> On 6-Dec-14, at 10:57 AM, Chen Gang wrote:
> 
>> And I also want to consult about parisc assembly instructions, I can not
>> find the related reference documents, could you help to have a check (or
>> provide some related information for it)? related contents are below:
> 
> https://parisc.wiki.kernel.org/index.php/Technical_Documentation

OK, thank you very much!!

For me, these information is enough, I checked the related sub link, it
has a full description for all related instruction (stb/h, stw, std).

  https://parisc.wiki.kernel.org/images-parisc/7/73/Parisc2.0.pdf

For me, my original comments need be improved: need mention about STH,
and maybe also need consider about additional related instructions of
parisc 2.0 (STDA, STWA, STBY, STDBY).


Thanks.
-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
  2014-12-05 22:00   ` Chen Gang
  2014-12-06 15:57     ` Chen Gang
@ 2014-12-10  1:45     ` Chen Gang
  1 sibling, 0 replies; 12+ messages in thread
From: Chen Gang @ 2014-12-10  1:45 UTC (permalink / raw)
  To: akpm@linux-foundation.org
  Cc: Minchan Kim, rth@twiddle.net, ink@jurassic.park.msu.ru,
	mattst88@gmail.com, Ralf Baechle, jejb@parisc-linux.org,
	deller@gmx.de, chris@zankel.net, jcmvbkbc@gmail.com,
	Arnd Bergmann, linux-kernel@vger.kernel.org, linux-arch,
	linux-api, Geert Uytterhoeven, Carlos O'Donell,
	Darrick J. Wong, dietlibc, Felix von Leitner

Hello Andrew:

Could you help check this patch, when you have time. And apply it if
possible.

I guess, this patch is a little urgent, since it changes uapi, if wait
a little longer, more user mode programs (e.g. libc) may use MADV_FREE
as various values.

Thanks.

On 12/6/14 06:00, Chen Gang wrote:
> On 12/05/2014 02:54 PM, Minchan Kim wrote:
>> On Fri, Dec 05, 2014 at 06:58:29AM +0800, Chen Gang wrote:
>>> For uapi, need try to let all macros have same value, and MADV_FREE is
>>> added into main branch recently, so need redefine MADV_FREE for it.
>>>
>>> At present, '8' can be shared with all architectures, so redefine it to
>>> '8'.
>>>
>>> Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
>>
>>
>> Hello Chen,
>>
>> Thanks for looking at this.
>> Feel free to add my sign.
>>
>> Acked-by: Minchan Kim <minchan@kernel.org>
>>
> 
> OK, thanks.
> 
> Originally I sent the same patch like you sent (but later than yours).
> Geert suggested to use same value for MADV_FREE, and Carlos confirmed
> it and suggested more things (sorry, I forgot to Cc them in this mail).
> 

-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
  2014-12-06 15:57     ` Chen Gang
  2014-12-07 16:14       ` John David Anglin
@ 2014-12-24 15:27       ` Chen Gang
  1 sibling, 0 replies; 12+ messages in thread
From: Chen Gang @ 2014-12-24 15:27 UTC (permalink / raw)
  To: jejb@parisc-linux.org
  Cc: linux-kernel@vger.kernel.org, linux-parisc@vger.kernel.org,
	Joel Brobecker

On 12/06/2014 11:57 PM, Chen Gang wrote:
> Hello Maintainers:
> 
[...]
> 
> But for parisc gcc latest upstream compiler, I found several issues, and
> I shall try to analyse them and communicate with gcc related members.
> 

Oh, sorry, there is one my configuration issue when cross compiling
parisc, after give a correct configuration, most of issues are disapear.

Thanks.

[...]
> 

-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
  2014-12-04 22:58 [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures Chen Gang
  2014-12-05  0:14 ` Darrick J. Wong
  2014-12-05  6:54 ` Minchan Kim
@ 2015-10-28  7:18 ` Minchan Kim
       [not found]   ` <56308B0B.3000801@hotmail.com>
  2 siblings, 1 reply; 12+ messages in thread
From: Minchan Kim @ 2015-10-28  7:18 UTC (permalink / raw)
  To: Chen Gang
  Cc: akpm@linux-foundation.org, rth@twiddle.net,
	ink@jurassic.park.msu.ru, mattst88@gmail.com, Ralf Baechle,
	jejb@parisc-linux.org, deller@gmx.de, chris@zankel.net,
	jcmvbkbc@gmail.com, Arnd Bergmann, linux-kernel@vger.kernel.org,
	linux-arch, linux-api

Hello Chen,

n Fri, Dec 05, 2014 at 06:58:29AM +0800, Chen Gang wrote:
> For uapi, need try to let all macros have same value, and MADV_FREE is
> added into main branch recently, so need redefine MADV_FREE for it.
> 
> At present, '8' can be shared with all architectures, so redefine it to
> '8'.

Recently, I cleaned MADV_FREE patchset up and will send uptodate version
to Andrew to replace old implementation in mmotm tree which is not a
linus's tree so this change shouldn't break anyting.

When I look at status of this patch, it seems Andrew missed it
so I want to include this patch when I respin if you don't mind.

Is it okay for you?

Thanks.

> 
> Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
> ---
>  arch/alpha/include/uapi/asm/mman.h     | 2 +-
>  arch/mips/include/uapi/asm/mman.h      | 2 +-
>  arch/parisc/include/uapi/asm/mman.h    | 2 +-
>  arch/xtensa/include/uapi/asm/mman.h    | 2 +-
>  include/uapi/asm-generic/mman-common.h | 2 +-
>  5 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/alpha/include/uapi/asm/mman.h b/arch/alpha/include/uapi/asm/mman.h
> index 836fbd4..0b8a5de 100644
> --- a/arch/alpha/include/uapi/asm/mman.h
> +++ b/arch/alpha/include/uapi/asm/mman.h
> @@ -44,9 +44,9 @@
>  #define MADV_WILLNEED	3		/* will need these pages */
>  #define	MADV_SPACEAVAIL	5		/* ensure resources are available */
>  #define MADV_DONTNEED	6		/* don't need these pages */
> -#define MADV_FREE	7		/* free pages only if memory pressure */
>  
>  /* common/generic parameters */
> +#define MADV_FREE	8		/* free pages only if memory pressure */
>  #define MADV_REMOVE	9		/* remove these pages & resources */
>  #define MADV_DONTFORK	10		/* don't inherit across fork */
>  #define MADV_DOFORK	11		/* do inherit across fork */
> diff --git a/arch/mips/include/uapi/asm/mman.h b/arch/mips/include/uapi/asm/mman.h
> index 106e741..d247f54 100644
> --- a/arch/mips/include/uapi/asm/mman.h
> +++ b/arch/mips/include/uapi/asm/mman.h
> @@ -67,9 +67,9 @@
>  #define MADV_SEQUENTIAL 2		/* expect sequential page references */
>  #define MADV_WILLNEED	3		/* will need these pages */
>  #define MADV_DONTNEED	4		/* don't need these pages */
> -#define MADV_FREE	5		/* free pages only if memory pressure */
>  
>  /* common parameters: try to keep these consistent across architectures */
> +#define MADV_FREE	8		/* free pages only if memory pressure */
>  #define MADV_REMOVE	9		/* remove these pages & resources */
>  #define MADV_DONTFORK	10		/* don't inherit across fork */
>  #define MADV_DOFORK	11		/* do inherit across fork */
> diff --git a/arch/parisc/include/uapi/asm/mman.h b/arch/parisc/include/uapi/asm/mman.h
> index 6cb8db7..700d83f 100644
> --- a/arch/parisc/include/uapi/asm/mman.h
> +++ b/arch/parisc/include/uapi/asm/mman.h
> @@ -40,9 +40,9 @@
>  #define MADV_SPACEAVAIL 5               /* insure that resources are reserved */
>  #define MADV_VPS_PURGE  6               /* Purge pages from VM page cache */
>  #define MADV_VPS_INHERIT 7              /* Inherit parents page size */
> -#define MADV_FREE	8		/* free pages only if memory pressure */
>  
>  /* common/generic parameters */
> +#define MADV_FREE	8		/* free pages only if memory pressure */
>  #define MADV_REMOVE	9		/* remove these pages & resources */
>  #define MADV_DONTFORK	10		/* don't inherit across fork */
>  #define MADV_DOFORK	11		/* do inherit across fork */
> diff --git a/arch/xtensa/include/uapi/asm/mman.h b/arch/xtensa/include/uapi/asm/mman.h
> index 1b19f25..77eaca4 100644
> --- a/arch/xtensa/include/uapi/asm/mman.h
> +++ b/arch/xtensa/include/uapi/asm/mman.h
> @@ -80,9 +80,9 @@
>  #define MADV_SEQUENTIAL	2		/* expect sequential page references */
>  #define MADV_WILLNEED	3		/* will need these pages */
>  #define MADV_DONTNEED	4		/* don't need these pages */
> -#define MADV_FREE	5		/* free pages only if memory pressure */
>  
>  /* common parameters: try to keep these consistent across architectures */
> +#define MADV_FREE	8		/* free pages only if memory pressure */
>  #define MADV_REMOVE	9		/* remove these pages & resources */
>  #define MADV_DONTFORK	10		/* don't inherit across fork */
>  #define MADV_DOFORK	11		/* do inherit across fork */
> diff --git a/include/uapi/asm-generic/mman-common.h b/include/uapi/asm-generic/mman-common.h
> index 7a94102..8695959 100644
> --- a/include/uapi/asm-generic/mman-common.h
> +++ b/include/uapi/asm-generic/mman-common.h
> @@ -34,9 +34,9 @@
>  #define MADV_SEQUENTIAL	2		/* expect sequential page references */
>  #define MADV_WILLNEED	3		/* will need these pages */
>  #define MADV_DONTNEED	4		/* don't need these pages */
> -#define MADV_FREE	5		/* free pages only if memory pressure */
>  
>  /* common parameters: try to keep these consistent across architectures */
> +#define MADV_FREE	8		/* free pages only if memory pressure */
>  #define MADV_REMOVE	9		/* remove these pages & resources */
>  #define MADV_DONTFORK	10		/* don't inherit across fork */
>  #define MADV_DOFORK	11		/* do inherit across fork */
> -- 
> 1.9.3

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures
       [not found]   ` <56308B0B.3000801@hotmail.com>
@ 2015-10-28  8:45     ` Chen Gang
  0 siblings, 0 replies; 12+ messages in thread
From: Chen Gang @ 2015-10-28  8:45 UTC (permalink / raw)
  To: Minchan Kim
  Cc: Andrew Morton, rth@twiddle.net, ink@jurassic.park.msu.ru,
	mattst88@gmail.com, Ralf Baechle, jejb@parisc-linux.org,
	deller@gmx.de, chris@zankel.net, Max Filippov, Arnd Bergmann,
	kernel mailing list, linux-arch@vger.kernel.org,
	linux-api@vger.kernel.org, gang.chen.5i5j@gmail.com

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="gb2312", Size: 6052 bytes --]

On 2015Äê10ÔÂ28ÈÕ 15:18, Minchan Kim wrote:
> Hello Chen,
>
> n Fri, Dec 05, 2014 at 06:58:29AM +0800, Chen Gang wrote:
>> For uapi, need try to let all macros have same value, and MADV_FREE is
>> added into main branch recently, so need redefine MADV_FREE for it.
>>
>> At present, '8' can be shared with all architectures, so redefine it to
>> '8'.
>
> Recently, I cleaned MADV_FREE patchset up and will send uptodate version
> to Andrew to replace old implementation in mmotm tree which is not a
> linus's tree so this change shouldn't break anyting.
>
> When I look at status of this patch, it seems Andrew missed it
> so I want to include this patch when I respin if you don't mind.
>
> Is it okay for you?
>

For me, it is OK. And thank you for your work. :-)


> Thanks.
>
>>
>> Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
>> ---
>>  arch/alpha/include/uapi/asm/mman.h     | 2 +-
>>  arch/mips/include/uapi/asm/mman.h      | 2 +-
>>  arch/parisc/include/uapi/asm/mman.h    | 2 +-
>>  arch/xtensa/include/uapi/asm/mman.h    | 2 +-
>>  include/uapi/asm-generic/mman-common.h | 2 +-
>>  5 files changed, 5 insertions(+), 5 deletions(-)
>>
>> diff --git a/arch/alpha/include/uapi/asm/mman.h b/arch/alpha/include/uapi/asm/mman.h
>> index 836fbd4..0b8a5de 100644
>> --- a/arch/alpha/include/uapi/asm/mman.h
>> +++ b/arch/alpha/include/uapi/asm/mman.h
>> @@ -44,9 +44,9 @@
>>  #define MADV_WILLNEED       3               /* will need these pages */
>>  #define     MADV_SPACEAVAIL 5               /* ensure resources are available */
>>  #define MADV_DONTNEED       6               /* don't need these pages */
>> -#define MADV_FREE   7               /* free pages only if memory pressure */
>>
>>  /* common/generic parameters */
>> +#define MADV_FREE   8               /* free pages only if memory pressure */
>>  #define MADV_REMOVE 9               /* remove these pages & resources */
>>  #define MADV_DONTFORK       10              /* don't inherit across fork */
>>  #define MADV_DOFORK 11              /* do inherit across fork */
>> diff --git a/arch/mips/include/uapi/asm/mman.h b/arch/mips/include/uapi/asm/mman.h
>> index 106e741..d247f54 100644
>> --- a/arch/mips/include/uapi/asm/mman.h
>> +++ b/arch/mips/include/uapi/asm/mman.h
>> @@ -67,9 +67,9 @@
>>  #define MADV_SEQUENTIAL 2           /* expect sequential page references */
>>  #define MADV_WILLNEED       3               /* will need these pages */
>>  #define MADV_DONTNEED       4               /* don't need these pages */
>> -#define MADV_FREE   5               /* free pages only if memory pressure */
>>
>>  /* common parameters: try to keep these consistent across architectures */
>> +#define MADV_FREE   8               /* free pages only if memory pressure */
>>  #define MADV_REMOVE 9               /* remove these pages & resources */
>>  #define MADV_DONTFORK       10              /* don't inherit across fork */
>>  #define MADV_DOFORK 11              /* do inherit across fork */
>> diff --git a/arch/parisc/include/uapi/asm/mman.h b/arch/parisc/include/uapi/asm/mman.h
>> index 6cb8db7..700d83f 100644
>> --- a/arch/parisc/include/uapi/asm/mman.h
>> +++ b/arch/parisc/include/uapi/asm/mman.h
>> @@ -40,9 +40,9 @@
>>  #define MADV_SPACEAVAIL 5               /* insure that resources are reserved */
>>  #define MADV_VPS_PURGE  6               /* Purge pages from VM page cache */
>>  #define MADV_VPS_INHERIT 7              /* Inherit parents page size */
>> -#define MADV_FREE   8               /* free pages only if memory pressure */
>>
>>  /* common/generic parameters */
>> +#define MADV_FREE   8               /* free pages only if memory pressure */
>>  #define MADV_REMOVE 9               /* remove these pages & resources */
>>  #define MADV_DONTFORK       10              /* don't inherit across fork */
>>  #define MADV_DOFORK 11              /* do inherit across fork */
>> diff --git a/arch/xtensa/include/uapi/asm/mman.h b/arch/xtensa/include/uapi/asm/mman.h
>> index 1b19f25..77eaca4 100644
>> --- a/arch/xtensa/include/uapi/asm/mman.h
>> +++ b/arch/xtensa/include/uapi/asm/mman.h
>> @@ -80,9 +80,9 @@
>>  #define MADV_SEQUENTIAL     2               /* expect sequential page references */
>>  #define MADV_WILLNEED       3               /* will need these pages */
>>  #define MADV_DONTNEED       4               /* don't need these pages */
>> -#define MADV_FREE   5               /* free pages only if memory pressure */
>>
>>  /* common parameters: try to keep these consistent across architectures */
>> +#define MADV_FREE   8               /* free pages only if memory pressure */
>>  #define MADV_REMOVE 9               /* remove these pages & resources */
>>  #define MADV_DONTFORK       10              /* don't inherit across fork */
>>  #define MADV_DOFORK 11              /* do inherit across fork */
>> diff --git a/include/uapi/asm-generic/mman-common.h b/include/uapi/asm-generic/mman-common.h
>> index 7a94102..8695959 100644
>> --- a/include/uapi/asm-generic/mman-common.h
>> +++ b/include/uapi/asm-generic/mman-common.h
>> @@ -34,9 +34,9 @@
>>  #define MADV_SEQUENTIAL     2               /* expect sequential page references */
>>  #define MADV_WILLNEED       3               /* will need these pages */
>>  #define MADV_DONTNEED       4               /* don't need these pages */
>> -#define MADV_FREE   5               /* free pages only if memory pressure */
>>
>>  /* common parameters: try to keep these consistent across architectures */
>> +#define MADV_FREE   8               /* free pages only if memory pressure */
>>  #define MADV_REMOVE 9               /* remove these pages & resources */
>>  #define MADV_DONTFORK       10              /* don't inherit across fork */
>>  #define MADV_DOFORK 11              /* do inherit across fork */
>> --
>> 1.9.3

--
Chen Gang

Open, share, and attitude like air, water, and life which God blessed
 		 	   		  ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2015-10-28  8:45 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-04 22:58 [PATCH] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures Chen Gang
2014-12-05  0:14 ` Darrick J. Wong
2014-12-05 21:51   ` Chen Gang
2014-12-05  6:54 ` Minchan Kim
2014-12-05 22:00   ` Chen Gang
2014-12-06 15:57     ` Chen Gang
2014-12-07 16:14       ` John David Anglin
2014-12-07 22:35         ` Chen Gang
2014-12-24 15:27       ` Chen Gang
2014-12-10  1:45     ` Chen Gang
2015-10-28  7:18 ` Minchan Kim
     [not found]   ` <56308B0B.3000801@hotmail.com>
2015-10-28  8:45     ` Chen Gang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).