* net/netfilter/nfnetlink_cthelper.c:254:22: sparse: sparse: incorrect type in assignment (different address spaces)
@ 2026-09-23 10:49 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-09-23 10:49 UTC (permalink / raw)
To: Pablo Neira Ayuso; +Cc: oe-kbuild-all, linux-kernel
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fe2ec83746e501645709761605c2464a44fd2929
commit: ac46f3f35b6e68fb062ae7cf780d516c0cf4c00a netfilter: nf_conntrack_helper: add refcounting from datapath
date: 4 months ago
config: parisc-randconfig-r1301-20260923 (https://download.01.org/0day-ci/archive/20260923/202609231853.Y4WT9aF7-lkp@intel.com/config)
compiler: hppa-linux-gcc (GCC) 8.5.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260923/202609231853.Y4WT9aF7-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
| Fixes: ac46f3f35b6e ("netfilter: nf_conntrack_helper: add refcounting from datapath")
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202609231853.Y4WT9aF7-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> net/netfilter/nfnetlink_cthelper.c:254:22: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int ( [noderef] __rcu *help )( ... ) @@ got int ( * )( ... ) @@
net/netfilter/nfnetlink_cthelper.c:254:22: sparse: expected int ( [noderef] __rcu *help )( ... )
net/netfilter/nfnetlink_cthelper.c:254:22: sparse: got int ( * )( ... )
vim +254 net/netfilter/nfnetlink_cthelper.c
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 212
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 213 static int
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 214 nfnl_cthelper_create(const struct nlattr * const tb[],
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 215 struct nf_conntrack_tuple *tuple)
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 216 {
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 217 struct nf_conntrack_helper *helper;
83d90219a5df8d9 Liping Zhang 2017-03-25 218 struct nfnl_cthelper *nfcth;
157ffffeb5dc1b5 Florian Westphal 2017-04-16 219 unsigned int size;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 220 int ret;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 221
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 222 if (!tb[NFCTH_TUPLE] || !tb[NFCTH_POLICY] || !tb[NFCTH_PRIV_DATA_LEN])
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 223 return -EINVAL;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 224
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 225 nfcth = kzalloc_obj(*nfcth, GFP_KERNEL_ACCOUNT);
83d90219a5df8d9 Liping Zhang 2017-03-25 226 if (nfcth == NULL)
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 227 return -ENOMEM;
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 228
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 229 helper = kzalloc_obj(*helper, GFP_KERNEL_ACCOUNT);
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 230 if (!helper) {
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 231 ret = -ENOMEM;
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 232 goto err_cth;
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 233 }
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 234
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 235 nfcth->helper = helper;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 236
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 237 ret = nfnl_cthelper_parse_expect_policy(helper, tb[NFCTH_POLICY]);
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 238 if (ret < 0)
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 239 goto err_helper;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 240
872f690341948b5 Francis Laniel 2020-11-15 241 nla_strscpy(helper->name,
4b83a9049a983b2 Eric Dumazet 2018-05-21 242 tb[NFCTH_NAME], NF_CT_HELPER_NAME_LEN);
157ffffeb5dc1b5 Florian Westphal 2017-04-16 243 size = ntohl(nla_get_be32(tb[NFCTH_PRIV_DATA_LEN]));
c593642c8be0469 Pankaj Bharadiya 2019-12-09 244 if (size > sizeof_field(struct nf_conn_help, data)) {
157ffffeb5dc1b5 Florian Westphal 2017-04-16 245 ret = -ENOMEM;
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 246 goto err_helper;
157ffffeb5dc1b5 Florian Westphal 2017-04-16 247 }
703acd70f249653 Pablo Neira Ayuso 2020-05-24 248 helper->data_len = size;
157ffffeb5dc1b5 Florian Westphal 2017-04-16 249
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 250 helper->flags |= NF_CT_HELPER_F_USERSPACE;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 251 memcpy(&helper->tuple, tuple, sizeof(struct nf_conntrack_tuple));
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 252
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 253 helper->me = THIS_MODULE;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 @254 helper->help = nfnl_userspace_cthelper;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 255 helper->from_nlattr = nfnl_cthelper_from_nlattr;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 256 helper->to_nlattr = nfnl_cthelper_to_nlattr;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 257
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 258 /* Default to queue number zero, this can be updated at any time. */
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 259 if (tb[NFCTH_QUEUE_NUM])
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 260 helper->queue_num = ntohl(nla_get_be32(tb[NFCTH_QUEUE_NUM]));
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 261
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 262 if (tb[NFCTH_STATUS]) {
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 263 int status = ntohl(nla_get_be32(tb[NFCTH_STATUS]));
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 264
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 265 switch(status) {
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 266 case NFCT_HELPER_STATUS_ENABLED:
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 267 helper->flags |= NF_CT_HELPER_F_CONFIGURED;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 268 break;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 269 case NFCT_HELPER_STATUS_DISABLED:
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 270 helper->flags &= ~NF_CT_HELPER_F_CONFIGURED;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 271 break;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 272 }
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 273 }
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 274
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 275 ret = __nf_conntrack_helper_register(helper);
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 276 if (ret < 0)
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 277 goto err_helper;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 278
83d90219a5df8d9 Liping Zhang 2017-03-25 279 list_add_tail(&nfcth->list, &nfnl_cthelper_list);
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 280 return 0;
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 281 err_helper:
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 282 kfree(helper);
6031487d4e273d7 Pablo Neira Ayuso 2026-06-04 283 err_cth:
83d90219a5df8d9 Liping Zhang 2017-03-25 284 kfree(nfcth);
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 285 return ret;
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 286 }
12f7a505331e6b2 Pablo Neira Ayuso 2012-05-13 287
:::::: The code at line 254 was first introduced by commit
:::::: 12f7a505331e6b2754684b509f2ac8f0011ce644 netfilter: add user-space connection tracking helper infrastructure
:::::: TO: Pablo Neira Ayuso <pablo@netfilter.org>
:::::: CC: Pablo Neira Ayuso <pablo@netfilter.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-09-23 10:50 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-23 10:49 net/netfilter/nfnetlink_cthelper.c:254:22: sparse: sparse: incorrect type in assignment (different address spaces) kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®