lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202506071806.mshFK42h-lkp@intel.com>
Date: Sat, 7 Jun 2025 18:29:34 +0800
From: kernel test robot <lkp@...el.com>
To: wangfushuai <wangfushuai@...du.com>, akpm@...ux-foundation.org,
	david@...hat.com, andrii@...nel.org, osalvador@...e.de,
	Liam.Howlett@...cle.com, christophe.leroy@...roup.eu
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
	linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
	wangfushuai <wangfushuai@...du.com>
Subject: Re: [PATCH] fs/proc/task_mmu: add VM_SHADOW_STACK for arm64 when
 support GCS

Hi wangfushuai,

kernel test robot noticed the following build warnings:

[auto build test WARNING on brauner-vfs/vfs.all]
[also build test WARNING on akpm-mm/mm-everything linus/master v6.15 next-20250606]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/wangfushuai/fs-proc-task_mmu-add-VM_SHADOW_STACK-for-arm64-when-support-GCS/20250607-141047
base:   https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git vfs.all
patch link:    https://lore.kernel.org/r/20250607060741.69902-1-wangfushuai%40baidu.com
patch subject: [PATCH] fs/proc/task_mmu: add VM_SHADOW_STACK for arm64 when support GCS
config: x86_64-buildonly-randconfig-001-20250607 (https://download.01.org/0day-ci/archive/20250607/202506071806.mshFK42h-lkp@intel.com/config)
compiler: clang version 20.1.2 (https://github.com/llvm/llvm-project 58df0ef89dd64126512e4ee27b4ac3fd8ddf6247)
rustc: rustc 1.78.0 (9b00956e5 2024-04-29)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250607/202506071806.mshFK42h-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202506071806.mshFK42h-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> fs/proc/task_mmu.c:994:42: warning: extra tokens at end of #ifdef directive [-Wextra-tokens]
     994 | #ifdef CONFIG_ARCH_HAS_USER_SHADOW_STACK || defined(CONFIG_ARM64_GCS)
         |                                          ^
         |                                          //
   1 warning generated.


vim +994 fs/proc/task_mmu.c

   920	
   921	static void show_smap_vma_flags(struct seq_file *m, struct vm_area_struct *vma)
   922	{
   923		/*
   924		 * Don't forget to update Documentation/ on changes.
   925		 *
   926		 * The length of the second argument of mnemonics[]
   927		 * needs to be 3 instead of previously set 2
   928		 * (i.e. from [BITS_PER_LONG][2] to [BITS_PER_LONG][3])
   929		 * to avoid spurious
   930		 * -Werror=unterminated-string-initialization warning
   931		 *  with GCC 15
   932		 */
   933		static const char mnemonics[BITS_PER_LONG][3] = {
   934			/*
   935			 * In case if we meet a flag we don't know about.
   936			 */
   937			[0 ... (BITS_PER_LONG-1)] = "??",
   938	
   939			[ilog2(VM_READ)]	= "rd",
   940			[ilog2(VM_WRITE)]	= "wr",
   941			[ilog2(VM_EXEC)]	= "ex",
   942			[ilog2(VM_SHARED)]	= "sh",
   943			[ilog2(VM_MAYREAD)]	= "mr",
   944			[ilog2(VM_MAYWRITE)]	= "mw",
   945			[ilog2(VM_MAYEXEC)]	= "me",
   946			[ilog2(VM_MAYSHARE)]	= "ms",
   947			[ilog2(VM_GROWSDOWN)]	= "gd",
   948			[ilog2(VM_PFNMAP)]	= "pf",
   949			[ilog2(VM_LOCKED)]	= "lo",
   950			[ilog2(VM_IO)]		= "io",
   951			[ilog2(VM_SEQ_READ)]	= "sr",
   952			[ilog2(VM_RAND_READ)]	= "rr",
   953			[ilog2(VM_DONTCOPY)]	= "dc",
   954			[ilog2(VM_DONTEXPAND)]	= "de",
   955			[ilog2(VM_LOCKONFAULT)]	= "lf",
   956			[ilog2(VM_ACCOUNT)]	= "ac",
   957			[ilog2(VM_NORESERVE)]	= "nr",
   958			[ilog2(VM_HUGETLB)]	= "ht",
   959			[ilog2(VM_SYNC)]	= "sf",
   960			[ilog2(VM_ARCH_1)]	= "ar",
   961			[ilog2(VM_WIPEONFORK)]	= "wf",
   962			[ilog2(VM_DONTDUMP)]	= "dd",
   963	#ifdef CONFIG_ARM64_BTI
   964			[ilog2(VM_ARM64_BTI)]	= "bt",
   965	#endif
   966	#ifdef CONFIG_MEM_SOFT_DIRTY
   967			[ilog2(VM_SOFTDIRTY)]	= "sd",
   968	#endif
   969			[ilog2(VM_MIXEDMAP)]	= "mm",
   970			[ilog2(VM_HUGEPAGE)]	= "hg",
   971			[ilog2(VM_NOHUGEPAGE)]	= "nh",
   972			[ilog2(VM_MERGEABLE)]	= "mg",
   973			[ilog2(VM_UFFD_MISSING)]= "um",
   974			[ilog2(VM_UFFD_WP)]	= "uw",
   975	#ifdef CONFIG_ARM64_MTE
   976			[ilog2(VM_MTE)]		= "mt",
   977			[ilog2(VM_MTE_ALLOWED)]	= "",
   978	#endif
   979	#ifdef CONFIG_ARCH_HAS_PKEYS
   980			/* These come out via ProtectionKey: */
   981			[ilog2(VM_PKEY_BIT0)]	= "",
   982			[ilog2(VM_PKEY_BIT1)]	= "",
   983			[ilog2(VM_PKEY_BIT2)]	= "",
   984	#if VM_PKEY_BIT3
   985			[ilog2(VM_PKEY_BIT3)]	= "",
   986	#endif
   987	#if VM_PKEY_BIT4
   988			[ilog2(VM_PKEY_BIT4)]	= "",
   989	#endif
   990	#endif /* CONFIG_ARCH_HAS_PKEYS */
   991	#ifdef CONFIG_HAVE_ARCH_USERFAULTFD_MINOR
   992			[ilog2(VM_UFFD_MINOR)]	= "ui",
   993	#endif /* CONFIG_HAVE_ARCH_USERFAULTFD_MINOR */
 > 994	#ifdef CONFIG_ARCH_HAS_USER_SHADOW_STACK || defined(CONFIG_ARM64_GCS)
   995			[ilog2(VM_SHADOW_STACK)] = "ss",
   996	#endif
   997	#if defined(CONFIG_64BIT) || defined(CONFIG_PPC32)
   998			[ilog2(VM_DROPPABLE)] = "dp",
   999	#endif
  1000	#ifdef CONFIG_64BIT
  1001			[ilog2(VM_SEALED)] = "sl",
  1002	#endif
  1003		};
  1004		size_t i;
  1005	
  1006		seq_puts(m, "VmFlags: ");
  1007		for (i = 0; i < BITS_PER_LONG; i++) {
  1008			if (!mnemonics[i][0])
  1009				continue;
  1010			if (vma->vm_flags & (1UL << i))
  1011				seq_printf(m, "%s ", mnemonics[i]);
  1012		}
  1013		seq_putc(m, '\n');
  1014	}
  1015	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ