[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LSU.2.11.1511011542030.11427@eggly.anvils>
Date: Sun, 1 Nov 2015 16:08:27 -0800 (PST)
From: Hugh Dickins <hughd@...gle.com>
To: Minchan Kim <minchan@...nel.org>
cc: Andrew Morton <akpm@...ux-foundation.org>,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
Michael Kerrisk <mtk.manpages@...il.com>,
linux-api@...r.kernel.org, Hugh Dickins <hughd@...gle.com>,
Johannes Weiner <hannes@...xchg.org>,
zhangyanfei@...fujitsu.com, Rik van Riel <riel@...hat.com>,
Mel Gorman <mgorman@...e.de>,
KOSAKI Motohiro <kosaki.motohiro@...fujitsu.com>,
David Miller <davem@...emloft.net>,
"Darrick J. Wong" <darrick.wong@...cle.com>,
Roland Dreier <roland@...nel.org>, Jason Evans <je@...com>,
Daniel Micay <danielmicay@...il.com>,
"Kirill A. Shutemov" <kirill@...temov.name>,
Michal Hocko <mhocko@...e.cz>, yalin.wang2010@...il.com,
Shaohua Li <shli@...nel.org>,
Chen Gang <gang.chen.5i5j@...il.com>,
"rth@...ddle.net" <rth@...ddle.net>,
"ink@...assic.park.msu.ru" <ink@...assic.park.msu.ru>,
"mattst88@...il.com" <mattst88@...il.com>,
Ralf Baechle <ralf@...ux-mips.org>,
"jejb@...isc-linux.org" <jejb@...isc-linux.org>,
"deller@....de" <deller@....de>,
"chris@...kel.net" <chris@...kel.net>,
"jcmvbkbc@...il.com" <jcmvbkbc@...il.com>,
Arnd Bergmann <arnd@...db.de>, sparclinux@...r.kernel.org,
linux-arch@...r.kernel.org
Subject: Re: [PATCH 3/8] arch: uapi: asm: mman.h: Let MADV_FREE have same
value for all architectures
On Fri, 30 Oct 2015, Minchan Kim wrote:
> From: Chen Gang <gang.chen.5i5j@...il.com>
>
> 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'.
>
> Cc: rth@...ddle.net <rth@...ddle.net>,
> Cc: ink@...assic.park.msu.ru <ink@...assic.park.msu.ru>
> Cc: mattst88@...il.com <mattst88@...il.com>
> Cc: Ralf Baechle <ralf@...ux-mips.org>
> Cc: jejb@...isc-linux.org <jejb@...isc-linux.org>
> Cc: deller@....de <deller@....de>
> Cc: chris@...kel.net <chris@...kel.net>
> Cc: jcmvbkbc@...il.com <jcmvbkbc@...il.com>
> Cc: Arnd Bergmann <arnd@...db.de>
> Cc: linux-arch@...r.kernel.org
> Cc: linux-api@...r.kernel.org
> Acked-by: Minchan Kim <minchan@...nel.org>
> Signed-off-by: Chen Gang <gang.chen.5i5j@...il.com>
Let me add
Acked-by: Hugh Dickins <hughd@...gle.com>
to this one too.
But I have extended your mail's Cc list: Darrick pointed out earlier
that dietlibc has a Solaris #define MADV_FREE 0x5 in its mman.h,
and that was in the kernel's sparc mman.h up until 2.6.25. I doubt
that presents any obstacle nowadays, but Dave Miller should be Cc'ed.
I was a little suspicious that 8 is available for MADV_FREE: why did
the common/generic parameters start at 9 instead of 8 back in 2.6.16?
I think the answer is that we had MADV_REMOVE coming in from one
direction, and MADV_DONTFORK coming from another direction, and when
Roland looked for where to start the commons for MADV_DONTFORK, it
appeared that 8 was occupied - by MADV_REMOVE; then a little later
MADV_REMOVE was shifted to become the first of the commons, at 9.
Hugh
> ---
> 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 836fbd44f65b..0b8a5de7aee3 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 106e741aa7ee..d247f5457944 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 6cb8db76fd4e..700d83fd9352 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 1b19f25bc567..77eaca434071 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 7a94102b7a02..869595947873 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.1
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists