public inbox for llvm@lists.linux.dev
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Swaraj Gaikwad <swarajgaikwad1925@gmail.com>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: Re: [PATCH RFC] mm/memblock: Fix reserve_mem allocation overlapping KHO scratch regions
Date: Tue, 2 Dec 2025 04:31:20 +0800	[thread overview]
Message-ID: <202512020406.fLEkXsNR-lkp@intel.com> (raw)
In-Reply-To: <20251130172939.574999-1-swarajgaikwad1925@gmail.com>

Hi Swaraj,

[This is a private test report for your RFC patch.]
kernel test robot noticed the following build errors:

[auto build test ERROR on 2178727587e1eaa930b8266377119ed6043067df]

url:    https://github.com/intel-lab-lkp/linux/commits/Swaraj-Gaikwad/mm-memblock-Fix-reserve_mem-allocation-overlapping-KHO-scratch-regions/20251130-200138
base:   2178727587e1eaa930b8266377119ed6043067df
patch link:    https://lore.kernel.org/r/20251130172939.574999-1-swarajgaikwad1925%40gmail.com
patch subject: [PATCH RFC] mm/memblock: Fix reserve_mem allocation overlapping KHO scratch regions
config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20251202/202512020406.fLEkXsNR-lkp@intel.com/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251202/202512020406.fLEkXsNR-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/202512020406.fLEkXsNR-lkp@intel.com/

All errors (new ones prefixed by >>):

>> mm/memblock.c:2692:18: error: use of undeclared identifier 'kho_scratch_cnt'
    2692 |         for (i = 0; i < kho_scratch_cnt; i++) {
         |                         ^
>> mm/memblock.c:2693:19: error: use of undeclared identifier 'kho_scratch'
    2693 |                 scratch_start = kho_scratch[i].addr;
         |                                 ^
   mm/memblock.c:2694:17: error: use of undeclared identifier 'kho_scratch'
    2694 |                 scratch_end = kho_scratch[i].addr + kho_scratch[i].size;
         |                               ^
   mm/memblock.c:2694:39: error: use of undeclared identifier 'kho_scratch'
    2694 |                 scratch_end = kho_scratch[i].addr + kho_scratch[i].size;
         |                                                     ^
   4 errors generated.


vim +/kho_scratch_cnt +2692 mm/memblock.c

  2627	
  2628	/*
  2629	 * Parse reserve_mem=nn:align:name
  2630	 */
  2631	static int __init reserve_mem(char *p)
  2632	{
  2633		phys_addr_t start, size, align, tmp;
  2634		char *name;
  2635		char *oldp;
  2636		int len;
  2637	
  2638		if (!p)
  2639			return -EINVAL;
  2640	
  2641		/* Check if there's room for more reserved memory */
  2642		if (reserved_mem_count >= RESERVE_MEM_MAX_ENTRIES)
  2643			return -EBUSY;
  2644	
  2645		oldp = p;
  2646		size = memparse(p, &p);
  2647		if (!size || p == oldp)
  2648			return -EINVAL;
  2649	
  2650		if (*p != ':')
  2651			return -EINVAL;
  2652	
  2653		align = memparse(p+1, &p);
  2654		if (*p != ':')
  2655			return -EINVAL;
  2656	
  2657		/*
  2658		 * memblock_phys_alloc() doesn't like a zero size align,
  2659		 * but it is OK for this command to have it.
  2660		 */
  2661		if (align < SMP_CACHE_BYTES)
  2662			align = SMP_CACHE_BYTES;
  2663	
  2664		name = p + 1;
  2665		len = strlen(name);
  2666	
  2667		/* name needs to have length but not too big */
  2668		if (!len || len >= RESERVE_MEM_NAME_SIZE)
  2669			return -EINVAL;
  2670	
  2671		/* Make sure that name has text */
  2672		for (p = name; *p; p++) {
  2673			if (!isspace(*p))
  2674				break;
  2675		}
  2676		if (!*p)
  2677			return -EINVAL;
  2678	
  2679		/* Make sure the name is not already used */
  2680		if (reserve_mem_find_by_name(name, &start, &tmp))
  2681			return -EBUSY;
  2682	
  2683		/* Pick previous allocations up from KHO if available */
  2684		if (reserve_mem_kho_revive(name, size, align))
  2685			return 1;
  2686	
  2687		phys_addr_t scratch_start, scratch_end;
  2688		phys_addr_t curr_start_addr = 0;
  2689		phys_addr_t alloc_end_addr = MEMBLOCK_ALLOC_ACCESSIBLE;
  2690		unsigned int i;
  2691	
> 2692		for (i = 0; i < kho_scratch_cnt; i++) {
> 2693			scratch_start = kho_scratch[i].addr;
  2694			scratch_end = kho_scratch[i].addr + kho_scratch[i].size;
  2695			alloc_end_addr = scratch_start;
  2696			if (alloc_end_addr > curr_start_addr) {
  2697				start = memblock_phys_alloc_range(size, align, curr_start_addr, alloc_end_addr);
  2698				if (start)
  2699					break;
  2700			}
  2701	   curr_start_addr = scratch_end;
  2702		}
  2703		if (!start)
  2704			return -ENOMEM;
  2705	
  2706		reserved_mem_add(start, size, name);
  2707	
  2708		return 1;
  2709	}
  2710	__setup("reserve_mem=", reserve_mem);
  2711	

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

           reply	other threads:[~2025-12-01 20:31 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <20251130172939.574999-1-swarajgaikwad1925@gmail.com>]

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=202512020406.fLEkXsNR-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=llvm@lists.linux.dev \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=swarajgaikwad1925@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox