linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Anthony Yznaga <anthony.yznaga@oracle.com>, linux-mm@kvack.org
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
	akpm@linux-foundation.org, andreyknvl@gmail.com, arnd@arndb.de,
	bp@alien8.de, brauner@kernel.org, bsegall@google.com,
	corbet@lwn.net, dave.hansen@linux.intel.com, david@redhat.com,
	dietmar.eggemann@arm.com, ebiederm@xmission.com, hpa@zytor.com,
	jakub.wartak@mailbox.org, jannh@google.com,
	juri.lelli@redhat.com, khalid@kernel.org,
	liam.howlett@oracle.com, linyongting@bytedance.com,
	lorenzo.stoakes@oracle.com, luto@kernel.org,
	markhemm@googlemail.com, maz@kernel.org, mhiramat@kernel.org,
	mgorman@suse.de, mhocko@suse.com, mingo@redhat.com,
	muchun.song@linux.dev, neilb@suse.de, osalvador@suse.de
Subject: Re: [PATCH v3 18/22] mm/mshare: Add an ioctl for mapping objects in an mshare region
Date: Thu, 21 Aug 2025 04:36:46 +0800	[thread overview]
Message-ID: <202508210437.BXbf4eok-lkp@intel.com> (raw)
In-Reply-To: <20250820010415.699353-19-anthony.yznaga@oracle.com>

Hi Anthony,

kernel test robot noticed the following build warnings:

[auto build test WARNING on akpm-mm/mm-everything]
[also build test WARNING on next-20250820]
[cannot apply to tip/sched/core trace/for-next tip/x86/core tip/x86/mm kees/for-next/execve linus/master v6.17-rc2]
[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/Anthony-Yznaga/mm-Add-msharefs-filesystem/20250820-091021
base:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
patch link:    https://lore.kernel.org/r/20250820010415.699353-19-anthony.yznaga%40oracle.com
patch subject: [PATCH v3 18/22] mm/mshare: Add an ioctl for mapping objects in an mshare region
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20250821/202508210437.BXbf4eok-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250821/202508210437.BXbf4eok-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202508210437.BXbf4eok-lkp@intel.com/

All warnings (new ones prefixed by >>):

   mm/mshare.c:305:16: warning: variable 'mshare_start' set but not used [-Wunused-but-set-variable]
     305 |         unsigned long mshare_start, mshare_size;
         |                       ^
>> mm/mshare.c:386:57: warning: variable 'vm_flags' is uninitialized when used here [-Wuninitialized]
     386 |         mapped_addr = __do_mmap(NULL, addr, size, prot, flags, vm_flags,
         |                                                                ^~~~~~~~
   mm/mshare.c:361:21: note: initialize the variable 'vm_flags' to silence this warning
     361 |         vm_flags_t vm_flags;
         |                            ^
         |                             = 0
   2 warnings generated.


vim +/vm_flags +386 mm/mshare.c

   297	
   298	static unsigned long
   299	msharefs_get_unmapped_area(struct file *file, unsigned long addr,
   300			unsigned long len, unsigned long pgoff, unsigned long flags)
   301	{
   302		struct mshare_data *m_data = file->private_data;
   303		struct mm_struct *mm = current->mm;
   304		struct vm_area_struct *vma, *prev;
 > 305		unsigned long mshare_start, mshare_size;
   306		const unsigned long mmap_end = arch_get_mmap_end(addr, len, flags);
   307	
   308		mmap_assert_write_locked(mm);
   309	
   310		if ((flags & MAP_TYPE) == MAP_PRIVATE)
   311			return -EINVAL;
   312	
   313		if (!mshare_is_initialized(m_data) || !mshare_has_owner(m_data))
   314			return -EINVAL;
   315	
   316		mshare_start = m_data->start;
   317		mshare_size = m_data->size;
   318	
   319		if (len != mshare_size)
   320			return -EINVAL;
   321	
   322		if (len > mmap_end - mmap_min_addr)
   323			return -ENOMEM;
   324	
   325		if (flags & MAP_FIXED) {
   326			if (!IS_ALIGNED(addr, mshare_align))
   327				return -EINVAL;
   328			return addr;
   329		}
   330	
   331		if (addr) {
   332			addr = ALIGN(addr, mshare_align);
   333			vma = find_vma_prev(mm, addr, &prev);
   334			if (mmap_end - len >= addr && addr >= mmap_min_addr &&
   335			    (!vma || addr + len <= vm_start_gap(vma)) &&
   336			    (!prev || addr >= vm_end_gap(prev)))
   337				return addr;
   338		}
   339	
   340		if (!mm_flags_test(MMF_TOPDOWN, mm))
   341			return msharefs_get_unmapped_area_bottomup(file, addr, len,
   342					pgoff, flags);
   343		else
   344			return msharefs_get_unmapped_area_topdown(file, addr, len,
   345					pgoff, flags);
   346	}
   347	
   348	static long
   349	msharefs_create_mapping(struct mshare_data *m_data, struct mshare_create *mcreate)
   350	{
   351		struct mm_struct *host_mm = m_data->mm;
   352		unsigned long mshare_start, mshare_end;
   353		unsigned long region_offset = mcreate->region_offset;
   354		unsigned long size = mcreate->size;
   355		unsigned int fd = mcreate->fd;
   356		int flags = mcreate->flags;
   357		int prot = mcreate->prot;
   358		unsigned long populate = 0;
   359		unsigned long mapped_addr;
   360		unsigned long addr;
   361		vm_flags_t vm_flags;
   362		int error = -EINVAL;
   363	
   364		mshare_start = m_data->start;
   365		mshare_end = mshare_start + m_data->size;
   366		addr = mshare_start + region_offset;
   367	
   368		if ((addr < mshare_start) || (addr >= mshare_end) ||
   369		    (addr + size > mshare_end))
   370			goto out;
   371	
   372		/*
   373		 * Only anonymous shared memory at fixed addresses is allowed for now.
   374		 */
   375		if ((flags & (MAP_SHARED | MAP_FIXED)) != (MAP_SHARED | MAP_FIXED))
   376			goto out;
   377		if (fd != -1)
   378			goto out;
   379	
   380		if (mmap_write_lock_killable(host_mm)) {
   381			error = -EINTR;
   382			goto out;
   383		}
   384	
   385		error = 0;
 > 386		mapped_addr = __do_mmap(NULL, addr, size, prot, flags, vm_flags,
   387					0, &populate, NULL, host_mm);
   388	
   389		if (IS_ERR_VALUE(mapped_addr))
   390			error = (long)mapped_addr;
   391	
   392		mmap_write_unlock(host_mm);
   393	out:
   394		return error;
   395	}
   396	

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


  reply	other threads:[~2025-08-20 20:37 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-20  1:03 [PATCH v3 00/22] Add support for shared PTEs across processes Anthony Yznaga
2025-08-20  1:03 ` [PATCH v3 01/22] mm: Add msharefs filesystem Anthony Yznaga
2025-09-08 18:29   ` Liam R. Howlett
2025-09-08 19:09     ` Anthony Yznaga
2025-09-10 12:14   ` Pedro Falcato
2025-09-10 12:46     ` David Hildenbrand
2025-08-20  1:03 ` [PATCH v3 02/22] mm/mshare: pre-populate msharefs with information file Anthony Yznaga
2025-08-20  1:03 ` [PATCH v3 03/22] mm/mshare: make msharefs writable and support directories Anthony Yznaga
2025-08-20  1:03 ` [PATCH v3 04/22] mm/mshare: allocate an mm_struct for msharefs files Anthony Yznaga
2025-08-20  1:03 ` [PATCH v3 05/22] mm/mshare: add ways to set the size of an mshare region Anthony Yznaga
2025-08-20  1:03 ` [PATCH v3 06/22] mm/mshare: Add a vma flag to indicate " Anthony Yznaga
2025-09-08 18:45   ` David Hildenbrand
2025-09-08 18:56     ` Anthony Yznaga
2025-09-08 19:02       ` David Hildenbrand
2025-09-08 19:03         ` Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 07/22] mm/mshare: Add mmap support Anthony Yznaga
2025-08-20 19:02   ` kernel test robot
2025-08-20  1:04 ` [PATCH v3 08/22] mm/mshare: flush all TLBs when updating PTEs in an mshare range Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 09/22] sched/numa: do not scan msharefs vmas Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 10/22] mm: add mmap_read_lock_killable_nested() Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 11/22] mm: add and use unmap_page_range vm_ops hook Anthony Yznaga
2025-08-21 15:40   ` kernel test robot
2025-08-20  1:04 ` [PATCH v3 12/22] mm: introduce PUD page table shared count Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 13/22] mm/mshare: prepare for page table sharing support Anthony Yznaga
2025-09-15 15:27   ` Lorenzo Stoakes
2025-08-20  1:04 ` [PATCH v3 14/22] x86/mm: enable page table sharing Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 15/22] mm: create __do_mmap() to take an mm_struct * arg Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 16/22] mm: pass the mm in vma_munmap_struct Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 17/22] sched/mshare: mshare ownership Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 18/22] mm/mshare: Add an ioctl for mapping objects in an mshare region Anthony Yznaga
2025-08-20 20:36   ` kernel test robot [this message]
2025-08-20  1:04 ` [PATCH v3 19/22] mm/mshare: Add an ioctl for unmapping " Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 20/22] mm/mshare: support mapping files and anon hugetlb " Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 21/22] mm/mshare: provide a way to identify an mm as an mshare host mm Anthony Yznaga
2025-08-20  1:04 ` [PATCH v3 22/22] mm/mshare: charge fault handling allocations to the mshare owner Anthony Yznaga
2025-09-08 18:50   ` David Hildenbrand
2025-09-08 19:21     ` Anthony Yznaga
2025-09-08 20:28       ` David Hildenbrand
2025-09-08 20:55         ` Anthony Yznaga
2025-09-08 20:32 ` [PATCH v3 00/22] Add support for shared PTEs across processes David Hildenbrand
2025-09-08 20:59   ` Matthew Wilcox
2025-09-08 21:14     ` Anthony Yznaga
2025-09-09  7:53       ` David Hildenbrand
2025-09-09 18:29         ` Anthony Yznaga
2025-09-09 19:06         ` Lorenzo Stoakes

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=202508210437.BXbf4eok-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=andreyknvl@gmail.com \
    --cc=anthony.yznaga@oracle.com \
    --cc=arnd@arndb.de \
    --cc=bp@alien8.de \
    --cc=brauner@kernel.org \
    --cc=bsegall@google.com \
    --cc=corbet@lwn.net \
    --cc=dave.hansen@linux.intel.com \
    --cc=david@redhat.com \
    --cc=dietmar.eggemann@arm.com \
    --cc=ebiederm@xmission.com \
    --cc=hpa@zytor.com \
    --cc=jakub.wartak@mailbox.org \
    --cc=jannh@google.com \
    --cc=juri.lelli@redhat.com \
    --cc=khalid@kernel.org \
    --cc=liam.howlett@oracle.com \
    --cc=linux-mm@kvack.org \
    --cc=linyongting@bytedance.com \
    --cc=llvm@lists.linux.dev \
    --cc=lorenzo.stoakes@oracle.com \
    --cc=luto@kernel.org \
    --cc=markhemm@googlemail.com \
    --cc=maz@kernel.org \
    --cc=mgorman@suse.de \
    --cc=mhiramat@kernel.org \
    --cc=mhocko@suse.com \
    --cc=mingo@redhat.com \
    --cc=muchun.song@linux.dev \
    --cc=neilb@suse.de \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=osalvador@suse.de \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox