On Mon, May 13, 2024 at 07:03:00PM -0700, Yuanchu Xie wrote: > +/* > + * Used for internal kernel memctl calls, i.e. to better support kernel stacks, > + * or to efficiently zero hugetlb pages. > + */ > +long memctl_vmm_call(__u64 func_code, __u64 addr, __u64 length, __u64 arg, > + struct memctl_buf *buf) > +{ > + buf->call.func_code = func_code; > + buf->call.addr = addr; > + buf->call.length = length; > + buf->call.arg = arg; > + > + return __memctl_vmm_call(buf); > +} > +EXPORT_SYMBOL(memctl_vmm_call); You export something that is never actually called, which implies that this is not tested at all (i.e. it is dead code.) Please remove. Also, why not EXPORT_SYMBOL_GPL()? (I have to ask, sorry.) thanks, greg k-h