* Re: [RFC][PATCH 02/14] kmemdump: introduce kmemdump
[not found] <20250422113156.575971-3-eugen.hristev@linaro.org>
@ 2025-04-23 16:43 ` kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-04-23 16:43 UTC (permalink / raw)
To: Eugen Hristev; +Cc: llvm, oe-kbuild-all
Hi Eugen,
[This is a private test report for your RFC patch.]
kernel test robot noticed the following build errors:
[auto build test ERROR on tip/irq/core]
[also build test ERROR on tip/sched/core lwn/docs-next linus/master v6.15-rc3 next-20250423]
[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/Eugen-Hristev/Documentation-add-kmemdump/20250422-193638
base: tip/irq/core
patch link: https://lore.kernel.org/r/20250422113156.575971-3-eugen.hristev%40linaro.org
patch subject: [RFC][PATCH 02/14] kmemdump: introduce kmemdump
config: hexagon-allmodconfig (https://download.01.org/0day-ci/archive/20250424/202504240005.n3Qql6rF-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250424/202504240005.n3Qql6rF-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/202504240005.n3Qql6rF-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/debug/kmemdump.c:28:28: error: call to undeclared function 'kzalloc'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
28 | struct kmemdump_zone *z = kzalloc(sizeof(*z), GFP_KERNEL);
| ^
>> drivers/debug/kmemdump.c:28:24: error: incompatible integer to pointer conversion initializing 'struct kmemdump_zone *' with an expression of type 'int' [-Wint-conversion]
28 | struct kmemdump_zone *z = kzalloc(sizeof(*z), GFP_KERNEL);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/debug/kmemdump.c:88:2: error: call to undeclared function 'kfree'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
88 | kfree(z);
| ^
3 errors generated.
vim +/kzalloc +28 drivers/debug/kmemdump.c
15
16 /**
17 * kmemdump_register() - Register region into kmemdump.
18 * @handle: string of maximum 8 chars that identifies this region
19 * @zone: pointer to the zone of memory
20 * @size: region size
21 *
22 * Return: On success, it returns an allocated unique id that can be used
23 * at a later point to identify the region. On failure, it returns
24 * negative error value.
25 */
26 int kmemdump_register(char *handle, void *zone, size_t size)
27 {
> 28 struct kmemdump_zone *z = kzalloc(sizeof(*z), GFP_KERNEL);
29 int id;
30
31 if (!z)
32 return -ENOMEM;
33
34 mutex_lock(&kmemdump_lock);
35
36 id = idr_alloc_cyclic(&kmemdump_idr, z, 0, MAX_ZONES, GFP_KERNEL);
37 if (id < 0) {
38 mutex_unlock(&kmemdump_lock);
39 return id;
40 }
41
42 if (!backend)
43 pr_debug("kmemdump backend not available yet, waiting...\n");
44
45 z->zone = zone;
46 z->size = size;
47 z->id = id;
48
49 if (handle)
50 strscpy(z->handle, handle, 8);
51
52 if (backend) {
53 int ret;
54
55 ret = backend->register_region(id, handle, zone, size);
56 if (ret) {
57 mutex_unlock(&kmemdump_lock);
58 return ret;
59 }
60 z->registered = true;
61 }
62
63 mutex_unlock(&kmemdump_lock);
64 return id;
65 }
66 EXPORT_SYMBOL_GPL(kmemdump_register);
67
68 /**
69 * kmemdump_unregister() - Unregister region from kmemdump.
70 * @id: unique id that was returned when this region was successfully
71 * registered initially.
72 *
73 * Return: None
74 */
75 void kmemdump_unregister(int id)
76 {
77 struct kmemdump_zone *z;
78
79 mutex_lock(&kmemdump_lock);
80
81 z = idr_find(&kmemdump_idr, id);
82 if (!z)
83 return;
84 if (z->registered && backend)
85 backend->unregister_region(z->id);
86
87 idr_remove(&kmemdump_idr, id);
> 88 kfree(z);
89
90 mutex_unlock(&kmemdump_lock);
91 }
92 EXPORT_SYMBOL_GPL(kmemdump_unregister);
93
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread