On 11/14/22 13:39, Ian Cowan wrote: > On Mon, Nov 14, 2022 at 05:59:06PM +0900, Hyeonggon Yoo wrote: >> On Sat, Nov 12, 2022 at 08:21:14PM -0500, Ian Cowan wrote: >> > On Sat, Nov 12, 2022 at 05:11:27PM -0800, Randy Dunlap wrote: >> > > >> > > >> > > On 11/12/22 16:43, Ian Cowan wrote: >> > > > On Sat, Nov 12, 2022 at 04:34:18PM -0800, Randy Dunlap wrote: >> > > >> >> > > >> >> > > >> On 11/12/22 13:59, Ian Cowan wrote: >> > > >>> On Sat, Nov 12, 2022 at 09:21:34AM -0800, Randy Dunlap wrote: >> > > >>>> Hi-- >> > > >>>> >> > > >>>> On 11/12/22 08:37, Ian Cowan wrote: >> > > >>>>> When compiling drivers (speficially drivers/pci/hotplug), I am receiving >> > > >>>>> the following modpost error for both `kmalloc_trace` and >> > > >>>>> `kmalloc_node_trace` on the staging/staging-next branch: >> > > >>>>> >> > > >> >> > > >> Ian, what do you mean by "on the staging/staging-next branch"? >> > > >> >> > > >> What kernel version are you trying to build? >> > > >> >> > > >> The .config that you sent is for v6.1.0-rc1. >> > > > >> > > > I am building from the staging repository (gregkh/staging) and my >> > > > working branch when building is staging-next. So I am trying to build >> > > > from staging and not a particular version. I have also run `make modules_prepare` >> > > > and updated the .config per that script. However, when I do build >> > > > v6.1.0-rc1 from the main repository (torvalds/linux), I run into the same problem. >> > > >> > > Have you built the entire kernel already and then you are trying to build >> > > only drivers/pci/hotplug? >> > Yes, I did build the entire kernel already and then I'm just trying to >> > rebuild that module. >> > >> > In `include/linux/slab.h` if I remove the lines between `#ifdef >> > CONFIG_TRACING` and `#else` (lines 473-480) and then the corresponding >> > `#endif` and leave lines 481-499, I'm able to compile that module >> > without issue. >> >> I don't get what the problem is. >> In case kmalloc[_node]_trace() is undefined, it's replaced with kmem_cache_alloc[_node]. >> >> Is the kernel built with same config on tree? > > Yes, the same config on tree with no errors or warnings. I was able to > trace it back to this commit - building on the commit immediately prior > builds without error or warning. It looks like this commit does some > refactoring of the kmem_cache_alloc[_node] and kmalloc[_node]_trace. > > https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git/commit/?h=staging-next&id=26a40990ba052 As you can see in that diff, mm/slab_common.c does EXPORT_SYMBOL(kmalloc_trace) and EXPORT_SYMBOL(kmalloc_node_trace) so I don't see why they should be missing. Wonder if you have a stale mm/slab_common.o because for some reason it's not being recompiled (a file timestamp in the future?) Can you rm it and rebuild? And maybe also mm/built-in.a Or maybe a full make clean and/or a fresh checkout.