Re: [PATCH rdma-rc] RDMA/netlink: Annotate unused function that is needed for compilation check

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Nov 08, 2021 at 02:47:19PM +0200, Leon Romanovsky wrote:
> On Mon, Nov 08, 2021 at 08:36:39AM -0400, Jason Gunthorpe wrote:
> > On Sun, Nov 07, 2021 at 08:40:47AM +0200, Leon Romanovsky wrote:
> > > From: Leon Romanovsky <leonro@xxxxxxxxxx>
> > > 
> > > >> drivers/infiniband/core/nldev.c:2543:1: warning: unused function '__chk_RDMA_NL_NLDEV'
> > >    MODULE_ALIAS_RDMA_NETLINK(RDMA_NL_NLDEV, 5);
> > >    ^
> > > 
> > > Fixes: e3bf14bdc17a ("rdma: Autoload netlink client modules")
> > > Reported-by: kernel test robot <lkp@xxxxxxxxx>
> > > Signed-off-by: Leon Romanovsky <leonro@xxxxxxxxxx>
> > >  include/rdma/rdma_netlink.h | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/include/rdma/rdma_netlink.h b/include/rdma/rdma_netlink.h
> > > index 2758d9df71ee..c2a79aeee113 100644
> > > +++ b/include/rdma/rdma_netlink.h
> > > @@ -30,7 +30,7 @@ enum rdma_nl_flags {
> > >   * constant as well and the compiler checks they are the same.
> > >   */
> > >  #define MODULE_ALIAS_RDMA_NETLINK(_index, _val)                                \
> > > -	static inline void __chk_##_index(void)                                \
> > > +	static inline void __maybe_unused __chk_##_index(void)                 \
> > >  	{                                                                      \
> > >  		BUILD_BUG_ON(_index != _val);                                  \
> > >  	}                                                                      \
> > 
> > This is a compiler bug, static inline should never need maybe_unsed
> 
> I saw many examples like this in arch code.
> For example, commit 4ac214574d2d ("KVM: MMU: mark role_regs and role accessors as maybe unused")
> 
> It is better to fix and forget instead of trying to fix clang.

"Because clang reports warnings for unused inlines declared in a .c file,
mark both sets of accessors as __maybe_unused."

Yikes, what a thing to do.

Jason



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux