From: kernel test robot <lkp@intel.com>
To: Yunshui Jiang <jiangyunshui@kylinos.cn>,
alexander.deucher@amd.com, chriistian.koenig@amd.com
Cc: oe-kbuild-all@lists.linux.dev, linux-doc@vger.kernel.org,
linux-kernel@vger.kernel.org,
Yunshui Jiang <jiangyunshui@kylinos.cn>
Subject: Re: [PATCH] drm/amdgpu: use kmalloc_array() instead of kmalloc()
Date: Mon, 16 Jun 2025 15:30:57 +0800 [thread overview]
Message-ID: <202506161547.VMAIYY21-lkp@intel.com> (raw)
In-Reply-To: <20250616025559.2766331-1-jiangyunshui@kylinos.cn>
Hi Yunshui,
kernel test robot noticed the following build errors:
[auto build test ERROR on linus/master]
[also build test ERROR on v6.16-rc2 next-20250613]
[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/Yunshui-Jiang/drm-amdgpu-use-kmalloc_array-instead-of-kmalloc/20250616-105830
base: linus/master
patch link: https://lore.kernel.org/r/20250616025559.2766331-1-jiangyunshui%40kylinos.cn
patch subject: [PATCH] drm/amdgpu: use kmalloc_array() instead of kmalloc()
config: arm64-randconfig-002-20250616 (https://download.01.org/0day-ci/archive/20250616/202506161547.VMAIYY21-lkp@intel.com/config)
compiler: aarch64-linux-gcc (GCC) 15.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250616/202506161547.VMAIYY21-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/202506161547.VMAIYY21-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from include/linux/percpu.h:5,
from arch/arm64/include/asm/arch_timer.h:18,
from arch/arm64/include/asm/timex.h:8,
from include/linux/timex.h:67,
from include/linux/time32.h:13,
from include/linux/time.h:60,
from include/linux/stat.h:19,
from include/linux/fs.h:11,
from include/linux/debugfs.h:15,
from drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c:24:
drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c: In function 'amdgpu_ras_realloc_eh_data_space':
>> include/linux/slab.h:911:61: error: too many arguments to function 'kmalloc_noprof'; expected 2, have 3
911 | #define kmalloc(...) alloc_hooks(kmalloc_noprof(__VA_ARGS__))
| ^~~~~~~~~~~~~~
include/linux/alloc_tag.h:239:16: note: in definition of macro 'alloc_hooks_tag'
239 | typeof(_do_alloc) _res; \
| ^~~~~~~~~
include/linux/slab.h:911:49: note: in expansion of macro 'alloc_hooks'
911 | #define kmalloc(...) alloc_hooks(kmalloc_noprof(__VA_ARGS__))
| ^~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c:2722:21: note: in expansion of macro 'kmalloc'
2722 | void *bps = kmalloc(align_space, sizeof(*data->bps), GFP_KERNEL);
| ^~~~~~~
In file included from include/linux/fs.h:46:
include/linux/slab.h:896:46: note: declared here
896 | static __always_inline __alloc_size(1) void *kmalloc_noprof(size_t size, gfp_t flags)
| ^~~~~~~~~~~~~~
>> include/linux/slab.h:911:61: error: too many arguments to function 'kmalloc_noprof'; expected 2, have 3
911 | #define kmalloc(...) alloc_hooks(kmalloc_noprof(__VA_ARGS__))
| ^~~~~~~~~~~~~~
include/linux/alloc_tag.h:243:24: note: in definition of macro 'alloc_hooks_tag'
243 | _res = _do_alloc; \
| ^~~~~~~~~
include/linux/slab.h:911:49: note: in expansion of macro 'alloc_hooks'
911 | #define kmalloc(...) alloc_hooks(kmalloc_noprof(__VA_ARGS__))
| ^~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c:2722:21: note: in expansion of macro 'kmalloc'
2722 | void *bps = kmalloc(align_space, sizeof(*data->bps), GFP_KERNEL);
| ^~~~~~~
include/linux/slab.h:896:46: note: declared here
896 | static __always_inline __alloc_size(1) void *kmalloc_noprof(size_t size, gfp_t flags)
| ^~~~~~~~~~~~~~
>> include/linux/slab.h:911:61: error: too many arguments to function 'kmalloc_noprof'; expected 2, have 3
911 | #define kmalloc(...) alloc_hooks(kmalloc_noprof(__VA_ARGS__))
| ^~~~~~~~~~~~~~
include/linux/alloc_tag.h:246:24: note: in definition of macro 'alloc_hooks_tag'
246 | _res = _do_alloc; \
| ^~~~~~~~~
include/linux/slab.h:911:49: note: in expansion of macro 'alloc_hooks'
911 | #define kmalloc(...) alloc_hooks(kmalloc_noprof(__VA_ARGS__))
| ^~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c:2722:21: note: in expansion of macro 'kmalloc'
2722 | void *bps = kmalloc(align_space, sizeof(*data->bps), GFP_KERNEL);
| ^~~~~~~
include/linux/slab.h:896:46: note: declared here
896 | static __always_inline __alloc_size(1) void *kmalloc_noprof(size_t size, gfp_t flags)
| ^~~~~~~~~~~~~~
vim +/kmalloc_noprof +911 include/linux/slab.h
67f2df3b82d091 Kees Cook 2024-07-01 815
a0a44d9175b349 Vlastimil Babka 2024-05-27 816 /*
a0a44d9175b349 Vlastimil Babka 2024-05-27 817 * The following functions are not to be used directly and are intended only
a0a44d9175b349 Vlastimil Babka 2024-05-27 818 * for internal use from kmalloc() and kmalloc_node()
a0a44d9175b349 Vlastimil Babka 2024-05-27 819 * with the exception of kunit tests
a0a44d9175b349 Vlastimil Babka 2024-05-27 820 */
a0a44d9175b349 Vlastimil Babka 2024-05-27 821
a0a44d9175b349 Vlastimil Babka 2024-05-27 822 void *__kmalloc_noprof(size_t size, gfp_t flags)
a0a44d9175b349 Vlastimil Babka 2024-05-27 823 __assume_kmalloc_alignment __alloc_size(1);
f1b6eb6e6be149 Christoph Lameter 2013-09-04 824
67f2df3b82d091 Kees Cook 2024-07-01 825 void *__kmalloc_node_noprof(DECL_BUCKET_PARAMS(size, b), gfp_t flags, int node)
a0a44d9175b349 Vlastimil Babka 2024-05-27 826 __assume_kmalloc_alignment __alloc_size(1);
a0a44d9175b349 Vlastimil Babka 2024-05-27 827
a0a44d9175b349 Vlastimil Babka 2024-05-27 828 void *__kmalloc_cache_noprof(struct kmem_cache *s, gfp_t flags, size_t size)
a0a44d9175b349 Vlastimil Babka 2024-05-27 829 __assume_kmalloc_alignment __alloc_size(3);
7bd230a26648ac Suren Baghdasaryan 2024-03-21 830
a0a44d9175b349 Vlastimil Babka 2024-05-27 831 void *__kmalloc_cache_node_noprof(struct kmem_cache *s, gfp_t gfpflags,
a0a44d9175b349 Vlastimil Babka 2024-05-27 832 int node, size_t size)
a0a44d9175b349 Vlastimil Babka 2024-05-27 833 __assume_kmalloc_alignment __alloc_size(4);
7bd230a26648ac Suren Baghdasaryan 2024-03-21 834
a0a44d9175b349 Vlastimil Babka 2024-05-27 835 void *__kmalloc_large_noprof(size_t size, gfp_t flags)
a0a44d9175b349 Vlastimil Babka 2024-05-27 836 __assume_page_alignment __alloc_size(1);
a0c3b940023eef Harry Yoo 2022-08-17 837
a0a44d9175b349 Vlastimil Babka 2024-05-27 838 void *__kmalloc_large_node_noprof(size_t size, gfp_t flags, int node)
a0a44d9175b349 Vlastimil Babka 2024-05-27 839 __assume_page_alignment __alloc_size(1);
a0c3b940023eef Harry Yoo 2022-08-17 840
f1b6eb6e6be149 Christoph Lameter 2013-09-04 841 /**
838de63b101147 Vlastimil Babka 2022-11-10 842 * kmalloc - allocate kernel memory
f1b6eb6e6be149 Christoph Lameter 2013-09-04 843 * @size: how many bytes of memory are required.
838de63b101147 Vlastimil Babka 2022-11-10 844 * @flags: describe the allocation context
f1b6eb6e6be149 Christoph Lameter 2013-09-04 845 *
f1b6eb6e6be149 Christoph Lameter 2013-09-04 846 * kmalloc is the normal method of allocating memory
f1b6eb6e6be149 Christoph Lameter 2013-09-04 847 * for objects smaller than page size in the kernel.
7e3528c3660a2e Randy Dunlap 2013-11-22 848 *
59bb47985c1db2 Vlastimil Babka 2019-10-06 849 * The allocated object address is aligned to at least ARCH_KMALLOC_MINALIGN
59bb47985c1db2 Vlastimil Babka 2019-10-06 850 * bytes. For @size of power of two bytes, the alignment is also guaranteed
ad59baa3169591 Vlastimil Babka 2024-07-03 851 * to be at least to the size. For other sizes, the alignment is guaranteed to
ad59baa3169591 Vlastimil Babka 2024-07-03 852 * be at least the largest power-of-two divisor of @size.
59bb47985c1db2 Vlastimil Babka 2019-10-06 853 *
01598ba6b1a863 Mike Rapoport 2018-11-11 854 * The @flags argument may be one of the GFP flags defined at
e9d198f2be851f Thorsten Scherer 2023-03-12 855 * include/linux/gfp_types.h and described at
01598ba6b1a863 Mike Rapoport 2018-11-11 856 * :ref:`Documentation/core-api/mm-api.rst <mm-api-gfp-flags>`
7e3528c3660a2e Randy Dunlap 2013-11-22 857 *
01598ba6b1a863 Mike Rapoport 2018-11-11 858 * The recommended usage of the @flags is described at
2370ae4b1d5aa7 Mauro Carvalho Chehab 2020-04-10 859 * :ref:`Documentation/core-api/memory-allocation.rst <memory_allocation>`
7e3528c3660a2e Randy Dunlap 2013-11-22 860 *
01598ba6b1a863 Mike Rapoport 2018-11-11 861 * Below is a brief outline of the most useful GFP flags
7e3528c3660a2e Randy Dunlap 2013-11-22 862 *
01598ba6b1a863 Mike Rapoport 2018-11-11 863 * %GFP_KERNEL
01598ba6b1a863 Mike Rapoport 2018-11-11 864 * Allocate normal kernel ram. May sleep.
7e3528c3660a2e Randy Dunlap 2013-11-22 865 *
01598ba6b1a863 Mike Rapoport 2018-11-11 866 * %GFP_NOWAIT
01598ba6b1a863 Mike Rapoport 2018-11-11 867 * Allocation will not sleep.
7e3528c3660a2e Randy Dunlap 2013-11-22 868 *
01598ba6b1a863 Mike Rapoport 2018-11-11 869 * %GFP_ATOMIC
01598ba6b1a863 Mike Rapoport 2018-11-11 870 * Allocation will not sleep. May use emergency pools.
7e3528c3660a2e Randy Dunlap 2013-11-22 871 *
7e3528c3660a2e Randy Dunlap 2013-11-22 872 * Also it is possible to set different flags by OR'ing
7e3528c3660a2e Randy Dunlap 2013-11-22 873 * in one or more of the following additional @flags:
7e3528c3660a2e Randy Dunlap 2013-11-22 874 *
838de63b101147 Vlastimil Babka 2022-11-10 875 * %__GFP_ZERO
838de63b101147 Vlastimil Babka 2022-11-10 876 * Zero the allocated memory before returning. Also see kzalloc().
838de63b101147 Vlastimil Babka 2022-11-10 877 *
01598ba6b1a863 Mike Rapoport 2018-11-11 878 * %__GFP_HIGH
01598ba6b1a863 Mike Rapoport 2018-11-11 879 * This allocation has high priority and may use emergency pools.
7e3528c3660a2e Randy Dunlap 2013-11-22 880 *
01598ba6b1a863 Mike Rapoport 2018-11-11 881 * %__GFP_NOFAIL
01598ba6b1a863 Mike Rapoport 2018-11-11 882 * Indicate that this allocation is in no way allowed to fail
7e3528c3660a2e Randy Dunlap 2013-11-22 883 * (think twice before using).
7e3528c3660a2e Randy Dunlap 2013-11-22 884 *
01598ba6b1a863 Mike Rapoport 2018-11-11 885 * %__GFP_NORETRY
01598ba6b1a863 Mike Rapoport 2018-11-11 886 * If memory is not immediately available,
7e3528c3660a2e Randy Dunlap 2013-11-22 887 * then give up at once.
7e3528c3660a2e Randy Dunlap 2013-11-22 888 *
01598ba6b1a863 Mike Rapoport 2018-11-11 889 * %__GFP_NOWARN
01598ba6b1a863 Mike Rapoport 2018-11-11 890 * If allocation fails, don't issue any warnings.
7e3528c3660a2e Randy Dunlap 2013-11-22 891 *
01598ba6b1a863 Mike Rapoport 2018-11-11 892 * %__GFP_RETRY_MAYFAIL
01598ba6b1a863 Mike Rapoport 2018-11-11 893 * Try really hard to succeed the allocation but fail
dcda9b04713c3f Michal Hocko 2017-07-12 894 * eventually.
f1b6eb6e6be149 Christoph Lameter 2013-09-04 895 */
7bd230a26648ac Suren Baghdasaryan 2024-03-21 896 static __always_inline __alloc_size(1) void *kmalloc_noprof(size_t size, gfp_t flags)
f1b6eb6e6be149 Christoph Lameter 2013-09-04 897 {
6fa57d78aa7f21 Kees Cook 2022-11-17 898 if (__builtin_constant_p(size) && size) {
cc252eae85e095 Vlastimil Babka 2018-10-26 899 unsigned int index;
3bf019334fbbb5 Kees Cook 2022-11-17 900
f1b6eb6e6be149 Christoph Lameter 2013-09-04 901 if (size > KMALLOC_MAX_CACHE_SIZE)
a0a44d9175b349 Vlastimil Babka 2024-05-27 902 return __kmalloc_large_noprof(size, flags);
f1b6eb6e6be149 Christoph Lameter 2013-09-04 903
cc252eae85e095 Vlastimil Babka 2018-10-26 904 index = kmalloc_index(size);
a0a44d9175b349 Vlastimil Babka 2024-05-27 905 return __kmalloc_cache_noprof(
3c615294058429 GONG, Ruiqi 2023-07-14 906 kmalloc_caches[kmalloc_type(flags, _RET_IP_)][index],
f1b6eb6e6be149 Christoph Lameter 2013-09-04 907 flags, size);
f1b6eb6e6be149 Christoph Lameter 2013-09-04 908 }
7bd230a26648ac Suren Baghdasaryan 2024-03-21 909 return __kmalloc_noprof(size, flags);
f1b6eb6e6be149 Christoph Lameter 2013-09-04 910 }
7bd230a26648ac Suren Baghdasaryan 2024-03-21 @911 #define kmalloc(...) alloc_hooks(kmalloc_noprof(__VA_ARGS__))
ce6a50263d4dde Christoph Lameter 2013-01-10 912
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2025-06-16 7:31 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-16 2:55 [PATCH] drm/amdgpu: use kmalloc_array() instead of kmalloc() Yunshui Jiang
2025-06-16 3:14 ` Matthew Wilcox
2025-07-24 1:37 ` [PATCH v2] " Yunshui Jiang
2025-07-24 1:48 ` Jeff Johnson
2025-06-16 7:30 ` kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-09-16 9:29 [PATCH] drm/amdgpu: Use " Rahul Kumar
2025-09-17 18:25 ` Kuehling, Felix
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=202506161547.VMAIYY21-lkp@intel.com \
--to=lkp@intel.com \
--cc=alexander.deucher@amd.com \
--cc=chriistian.koenig@amd.com \
--cc=jiangyunshui@kylinos.cn \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
/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.