[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202409132123.Kfncs3AN-lkp@intel.com>
Date: Fri, 13 Sep 2024 22:03:02 +0800
From: kernel test robot <lkp@...el.com>
To: Abhishek Tamboli <abhishektamboli9@...il.com>,
gregkh@...uxfoundation.org
Cc: oe-kbuild-all@...ts.linux.dev, skhan@...uxfoundation.org,
rbmarliere@...il.com,
linux-kernel-mentees@...ts.linuxfoundation.org,
linux-staging@...ts.linux.dev, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] staging: octeon: Use new initialization api for tasklet
Hi Abhishek,
kernel test robot noticed the following build errors:
[auto build test ERROR on staging/staging-testing]
url: https://github.com/intel-lab-lkp/linux/commits/Abhishek-Tamboli/staging-octeon-Use-new-initialization-api-for-tasklet/20240913-012448
base: staging/staging-testing
patch link: https://lore.kernel.org/r/20240912172231.369566-1-abhishektamboli9%40gmail.com
patch subject: [PATCH] staging: octeon: Use new initialization api for tasklet
config: m68k-allmodconfig (https://download.01.org/0day-ci/archive/20240913/202409132123.Kfncs3AN-lkp@intel.com/config)
compiler: m68k-linux-gcc (GCC) 14.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240913/202409132123.Kfncs3AN-lkp@intel.com/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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202409132123.Kfncs3AN-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from include/linux/kernel_stat.h:8,
from include/linux/cgroup.h:25,
from include/net/netprio_cgroup.h:11,
from include/linux/netdevice.h:42,
from drivers/staging/octeon/ethernet-tx.c:10:
>> drivers/staging/octeon/ethernet-tx.c:44:52: error: initialization of 'void (*)(struct tasklet_struct *)' from incompatible pointer type 'void (*)(struct tasklet_struct)' [-Wincompatible-pointer-types]
44 | static DECLARE_TASKLET(cvm_oct_tx_cleanup_tasklet, cvm_oct_tx_do_cleanup);
| ^~~~~~~~~~~~~~~~~~~~~
include/linux/interrupt.h:665:21: note: in definition of macro 'DECLARE_TASKLET'
665 | .callback = _callback, \
| ^~~~~~~~~
drivers/staging/octeon/ethernet-tx.c:44:52: note: (near initialization for 'cvm_oct_tx_cleanup_tasklet.<anonymous>.callback')
44 | static DECLARE_TASKLET(cvm_oct_tx_cleanup_tasklet, cvm_oct_tx_do_cleanup);
| ^~~~~~~~~~~~~~~~~~~~~
include/linux/interrupt.h:665:21: note: in definition of macro 'DECLARE_TASKLET'
665 | .callback = _callback, \
| ^~~~~~~~~
vim +44 drivers/staging/octeon/ethernet-tx.c
> 10 #include <linux/netdevice.h>
11 #include <linux/etherdevice.h>
12 #include <linux/ip.h>
13 #include <linux/ratelimit.h>
14 #include <linux/string.h>
15 #include <linux/interrupt.h>
16 #include <net/dst.h>
17 #ifdef CONFIG_XFRM
18 #include <linux/xfrm.h>
19 #include <net/xfrm.h>
20 #endif /* CONFIG_XFRM */
21
22 #include <linux/atomic.h>
23 #include <net/sch_generic.h>
24
25 #include "octeon-ethernet.h"
26 #include "ethernet-defines.h"
27 #include "ethernet-tx.h"
28 #include "ethernet-util.h"
29
30 #define CVM_OCT_SKB_CB(skb) ((u64 *)((skb)->cb))
31
32 /*
33 * You can define GET_SKBUFF_QOS() to override how the skbuff output
34 * function determines which output queue is used. The default
35 * implementation always uses the base queue for the port. If, for
36 * example, you wanted to use the skb->priority field, define
37 * GET_SKBUFF_QOS as: #define GET_SKBUFF_QOS(skb) ((skb)->priority)
38 */
39 #ifndef GET_SKBUFF_QOS
40 #define GET_SKBUFF_QOS(skb) 0
41 #endif
42
43 static void cvm_oct_tx_do_cleanup(struct tasklet_struct clean);
> 44 static DECLARE_TASKLET(cvm_oct_tx_cleanup_tasklet, cvm_oct_tx_do_cleanup);
45
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists