All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anshuman Khandual <anshuman.khandual@arm.com>
To: kernel test robot <lkp@intel.com>, linux-mm@kvack.org
Cc: kbuild-all@lists.01.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH V2 2/2] mm/mmap: Drop generic protection_map[] array
Date: Tue, 14 Jun 2022 08:35:51 +0530	[thread overview]
Message-ID: <94c9de11-8838-53db-5c1b-2e059d11282e@arm.com> (raw)
In-Reply-To: <202206131931.ZJuanaBo-lkp@intel.com>



On 6/13/22 16:43, kernel test robot wrote:
> Hi Anshuman,
> 
> Thank you for the patch! Yet something to improve:
> 
> [auto build test ERROR on akpm-mm/mm-everything]
> 
> url:    https://github.com/intel-lab-lkp/linux/commits/Anshuman-Khandual/mm-mmap-Drop-__SXXX-__PXXX-macros-from-across-platforms/20220613-133456
> base:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
> config: powerpc64-randconfig-r016-20220613 (https://download.01.org/0day-ci/archive/20220613/202206131931.ZJuanaBo-lkp@intel.com/config)
> compiler: powerpc64le-linux-gcc (GCC) 11.3.0
> reproduce (this is a W=1 build):
>         wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # https://github.com/intel-lab-lkp/linux/commit/696f81b49f7b6316f652d795da4c0008efef4487
>         git remote add linux-review https://github.com/intel-lab-lkp/linux
>         git fetch --no-tags linux-review Anshuman-Khandual/mm-mmap-Drop-__SXXX-__PXXX-macros-from-across-platforms/20220613-133456
>         git checkout 696f81b49f7b6316f652d795da4c0008efef4487
>         # save the config file
>         mkdir build_dir && cp config build_dir/.config
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=powerpc SHELL=/bin/bash arch/powerpc/mm/book3s64/
> 
> If you fix the issue, kindly add following tag where applicable
> Reported-by: kernel test robot <lkp@intel.com>
> 
> All errors (new ones prefixed by >>):
> 
>    In file included from arch/powerpc/include/asm/page.h:306,
>                     from arch/powerpc/include/asm/mmu.h:149,
>                     from arch/powerpc/include/asm/lppaca.h:46,
>                     from arch/powerpc/include/asm/paca.h:18,
>                     from arch/powerpc/include/asm/current.h:13,
>                     from include/linux/sched.h:12,
>                     from arch/powerpc/mm/book3s64/pgtable.c:6:
>    arch/powerpc/mm/book3s64/pgtable.c: In function 'vm_get_page_prot':
>>> arch/powerpc/mm/book3s64/pgtable.c:557:41: error: 'protection_map' undeclared (first use in this function)
>      557 |         unsigned long prot = pgprot_val(protection_map[vm_flags &
>          |                                         ^~~~~~~~~~~~~~

Adding an extern declaration fixes the problem. The problem is generic declaration
in include/linux/mm.h is not available for platforms with ARCH_HAS_VM_GET_PAGE_PROT.
protection_map[] has to be moved into arch/powerpc/mm/pgtable.c to be used by both
32 bit and 64 bit platforms.

diff --git a/arch/powerpc/mm/book3s64/pgtable.c b/arch/powerpc/mm/book3s64/pgtable.c                                                                                                                                                                                              
index 260b0cc6d3a1..99c794ab253d 100644
--- a/arch/powerpc/mm/book3s64/pgtable.c                        
+++ b/arch/powerpc/mm/book3s64/pgtable.c
@@ -551,6 +551,8 @@ unsigned long memremap_compat_align(void)
 EXPORT_SYMBOL_GPL(memremap_compat_align);
 #endif
                                                                
+extern pgprot_t protection_map[16];
+                 
 /* Note due to the way vm flags are laid out, the bits are XWR */
 pgprot_t vm_get_page_prot(unsigned long vm_flags)
 {                                


WARNING: multiple messages have this Message-ID (diff)
From: Anshuman Khandual <anshuman.khandual@arm.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH V2 2/2] mm/mmap: Drop generic protection_map[] array
Date: Tue, 14 Jun 2022 08:35:51 +0530	[thread overview]
Message-ID: <94c9de11-8838-53db-5c1b-2e059d11282e@arm.com> (raw)
In-Reply-To: <202206131931.ZJuanaBo-lkp@intel.com>

[-- Attachment #1: Type: text/plain, Size: 3462 bytes --]



On 6/13/22 16:43, kernel test robot wrote:
> Hi Anshuman,
> 
> Thank you for the patch! Yet something to improve:
> 
> [auto build test ERROR on akpm-mm/mm-everything]
> 
> url:    https://github.com/intel-lab-lkp/linux/commits/Anshuman-Khandual/mm-mmap-Drop-__SXXX-__PXXX-macros-from-across-platforms/20220613-133456
> base:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
> config: powerpc64-randconfig-r016-20220613 (https://download.01.org/0day-ci/archive/20220613/202206131931.ZJuanaBo-lkp(a)intel.com/config)
> compiler: powerpc64le-linux-gcc (GCC) 11.3.0
> reproduce (this is a W=1 build):
>         wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # https://github.com/intel-lab-lkp/linux/commit/696f81b49f7b6316f652d795da4c0008efef4487
>         git remote add linux-review https://github.com/intel-lab-lkp/linux
>         git fetch --no-tags linux-review Anshuman-Khandual/mm-mmap-Drop-__SXXX-__PXXX-macros-from-across-platforms/20220613-133456
>         git checkout 696f81b49f7b6316f652d795da4c0008efef4487
>         # save the config file
>         mkdir build_dir && cp config build_dir/.config
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=powerpc SHELL=/bin/bash arch/powerpc/mm/book3s64/
> 
> If you fix the issue, kindly add following tag where applicable
> Reported-by: kernel test robot <lkp@intel.com>
> 
> All errors (new ones prefixed by >>):
> 
>    In file included from arch/powerpc/include/asm/page.h:306,
>                     from arch/powerpc/include/asm/mmu.h:149,
>                     from arch/powerpc/include/asm/lppaca.h:46,
>                     from arch/powerpc/include/asm/paca.h:18,
>                     from arch/powerpc/include/asm/current.h:13,
>                     from include/linux/sched.h:12,
>                     from arch/powerpc/mm/book3s64/pgtable.c:6:
>    arch/powerpc/mm/book3s64/pgtable.c: In function 'vm_get_page_prot':
>>> arch/powerpc/mm/book3s64/pgtable.c:557:41: error: 'protection_map' undeclared (first use in this function)
>      557 |         unsigned long prot = pgprot_val(protection_map[vm_flags &
>          |                                         ^~~~~~~~~~~~~~

Adding an extern declaration fixes the problem. The problem is generic declaration
in include/linux/mm.h is not available for platforms with ARCH_HAS_VM_GET_PAGE_PROT.
protection_map[] has to be moved into arch/powerpc/mm/pgtable.c to be used by both
32 bit and 64 bit platforms.

diff --git a/arch/powerpc/mm/book3s64/pgtable.c b/arch/powerpc/mm/book3s64/pgtable.c                                                                                                                                                                                              
index 260b0cc6d3a1..99c794ab253d 100644
--- a/arch/powerpc/mm/book3s64/pgtable.c                        
+++ b/arch/powerpc/mm/book3s64/pgtable.c
@@ -551,6 +551,8 @@ unsigned long memremap_compat_align(void)
 EXPORT_SYMBOL_GPL(memremap_compat_align);
 #endif
                                                                
+extern pgprot_t protection_map[16];
+                 
 /* Note due to the way vm flags are laid out, the bits are XWR */
 pgprot_t vm_get_page_prot(unsigned long vm_flags)
 {                                

  reply	other threads:[~2022-06-14  3:06 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-13  5:33 [PATCH V2 0/2] mm/mmap: Drop __SXXX/__PXXX macros from across platforms Anshuman Khandual
2022-06-13  5:33 ` [PATCH V2 1/2] mm/mmap: Restrict generic protection_map[] array visibility Anshuman Khandual
2022-06-13  5:33 ` [PATCH V2 2/2] mm/mmap: Drop generic protection_map[] array Anshuman Khandual
2022-06-13  9:31   ` kernel test robot
2022-06-14  2:20     ` Anshuman Khandual
2022-06-14  2:20       ` Anshuman Khandual
2022-06-13 11:13   ` kernel test robot
2022-06-14  3:05     ` Anshuman Khandual [this message]
2022-06-14  3:05       ` Anshuman Khandual
2022-06-15 13:15 ` [PATCH V2 0/2] mm/mmap: Drop __SXXX/__PXXX macros from across platforms Christoph Hellwig

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=94c9de11-8838-53db-5c1b-2e059d11282e@arm.com \
    --to=anshuman.khandual@arm.com \
    --cc=akpm@linux-foundation.org \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lkp@intel.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.