Re: [PATCH 1/2 net-next] libceph: Use sruct_size() in ceph_create_snap_context()

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

 



Le 19/05/2024 à 13:34, kernel test robot a écrit :
Hi Christophe,

kernel test robot noticed the following build errors:

[auto build test ERROR on net-next/main]

url:    https://github.com/intel-lab-lkp/linux/commits/Christophe-JAILLET/libceph-Use-__counted_by-in-struct-ceph_snap_context/20240519-172142
base:   net-next/main
patch link:    https://lore.kernel.org/r/5b7c72bdb52703bbfa5511ed500aed4babde1308.1716109606.git.christophe.jaillet%40wanadoo.fr
patch subject: [PATCH 1/2 net-next] libceph: Use sruct_size() in ceph_create_snap_context()
config: i386-allmodconfig (https://download.01.org/0day-ci/archive/20240519/202405191909.7qhhefnu-lkp@xxxxxxxxx/config)
compiler: gcc-13 (Ubuntu 13.2.0-4ubuntu3) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240519/202405191909.7qhhefnu-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202405191909.7qhhefnu-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

    net/ceph/snapshot.c: In function 'ceph_create_snap_context':
net/ceph/snapshot.c:32:25: error: implicit declaration of function 'sruct_size'; did you mean 'struct_size'? [-Werror=implicit-function-declaration]
       32 |         snapc = kzalloc(sruct_size(snapc, snaps, snap_count), gfp_flags);
          |                         ^~~~~~~~~~
          |                         struct_size
net/ceph/snapshot.c:32:43: error: 'snaps' undeclared (first use in this function); did you mean 'snapc'?
       32 |         snapc = kzalloc(sruct_size(snapc, snaps, snap_count), gfp_flags);
          |                                           ^~~~~
          |                                           snapc
    net/ceph/snapshot.c:32:43: note: each undeclared identifier is reported only once for each function it appears in
    cc1: some warnings being treated as errors


vim +32 net/ceph/snapshot.c

     11	
     12	/*
     13	 * Ceph snapshot contexts are reference counted objects, and the
     14	 * returned structure holds a single reference.  Acquire additional
     15	 * references with ceph_get_snap_context(), and release them with
     16	 * ceph_put_snap_context().  When the reference count reaches zero
     17	 * the entire structure is freed.
     18	 */
     19	
     20	/*
     21	 * Create a new ceph snapshot context large enough to hold the
     22	 * indicated number of snapshot ids (which can be 0).  Caller has
     23	 * to fill in snapc->seq and snapc->snaps[0..snap_count-1].
     24	 *
     25	 * Returns a null pointer if an error occurs.
     26	 */
     27	struct ceph_snap_context *ceph_create_snap_context(u32 snap_count,
     28							gfp_t gfp_flags)
     29	{
     30		struct ceph_snap_context *snapc;
     31	
   > 32		snapc = kzalloc(sruct_size(snapc, snaps, snap_count), gfp_flags);

Ouch!

this was build-tested, but I must have made a mistake when editing the patch file to add the "net-next".

Sorry about that.
I'll resend when the net-next branch will re-open.

CJ

     33		if (!snapc)
     34			return NULL;
     35	
     36		refcount_set(&snapc->nref, 1);
     37		snapc->num_snaps = snap_count;
     38	
     39		return snapc;
     40	}
     41	EXPORT_SYMBOL(ceph_create_snap_context);
     42	






[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux