On Mon, Feb 02, 2026 at 10:20:15AM -0800, Josh Poimboeuf wrote:
> On Mon, Feb 02, 2026 at 10:19:33AM -0800, Josh Poimboeuf wrote:
> > On Mon, Feb 02, 2026 at 05:18:13PM +0100, Arnd Bergmann wrote:
> > > Hi,
> > > 
> > > I see a new objtool related build failure on current linux-next
> > > with clang-21:
> > > 
> > > samples/livepatch/livepatch-shadow-fix1.o: error: objtool: static_call: 
> > > can't find static_call_key symbol: __SCK__WARN_trap
> > > 
> > > I couldn't figure out what exactly is going on there, this seems fine
> > > with gcc, and so far only one of hundreds of configs has this issue.
> > > 
> > > See the attachments for .config and the object file.
> > 
> > Ah, this is CONFIG_MEM_ALLOC_PROFILING_DEBUG inserting a WARN() in the
> > sample livepatch module's memory allocation, triggering the following
> > warning (file->klp is true):
> > 
> >             if (!key_sym) {
> >                     if (!opts.module || file->klp) {
> >                             ERROR("static_call: can't find static_call_key 
> > symbol: %s", tmp);
> >                             return -1;
> >                     }
> > 
> > 
> > So this is showing that the sample livepatch modules (which are built
> > differently from the new klp-build way of building livepatch modules)
> > will fail to build when trying to access a non-exported static key.
> 
> Erm, non-exported static *call*.

So I think we can just remove that file->klp check.  That check is
perhaps a bit too strict since it doesn't take into account livepatch
modules that were built without klp-build.

-- 
Josh

Reply via email to