Re: [PATCH nf-next 1/2] netfilter: flowtable: add vlan match offload support

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

 



Hi,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on nf-next/master]

url:    https://github.com/0day-ci/linux/commits/wenxu-ucloud-cn/netfilter-flowtable-add-vlan-match-offload-support/20210401-155259
base:   https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master
config: x86_64-randconfig-s021-20210401 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.3-279-g6d5d9b42-dirty
        # https://github.com/0day-ci/linux/commit/346de57353f34fbf24607af67862662212333f95
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review wenxu-ucloud-cn/netfilter-flowtable-add-vlan-match-offload-support/20210401-155259
        git checkout 346de57353f34fbf24607af67862662212333f95
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>


sparse warnings: (new ones prefixed by >>)
   net/netfilter/nf_flow_table_offload.c:46:32: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] keyid @@     got unsigned int @@
   net/netfilter/nf_flow_table_offload.c:46:32: sparse:     expected restricted __be32 [usertype] keyid
   net/netfilter/nf_flow_table_offload.c:46:32: sparse:     got unsigned int
   net/netfilter/nf_flow_table_offload.c:56:44: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] src @@     got unsigned int @@
   net/netfilter/nf_flow_table_offload.c:56:44: sparse:     expected restricted __be32 [usertype] src
   net/netfilter/nf_flow_table_offload.c:56:44: sparse:     got unsigned int
   net/netfilter/nf_flow_table_offload.c:58:44: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] dst @@     got unsigned int @@
   net/netfilter/nf_flow_table_offload.c:58:44: sparse:     expected restricted __be32 [usertype] dst
   net/netfilter/nf_flow_table_offload.c:58:44: sparse:     got unsigned int
>> net/netfilter/nf_flow_table_offload.c:90:25: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be16 [usertype] vlan_tpid @@     got int @@
   net/netfilter/nf_flow_table_offload.c:90:25: sparse:     expected restricted __be16 [usertype] vlan_tpid
   net/netfilter/nf_flow_table_offload.c:90:25: sparse:     got int
   net/netfilter/nf_flow_table_offload.c:123:32: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] src @@     got unsigned int @@
   net/netfilter/nf_flow_table_offload.c:123:32: sparse:     expected restricted __be32 [usertype] src
   net/netfilter/nf_flow_table_offload.c:123:32: sparse:     got unsigned int
   net/netfilter/nf_flow_table_offload.c:125:32: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] dst @@     got unsigned int @@
   net/netfilter/nf_flow_table_offload.c:125:32: sparse:     expected restricted __be32 [usertype] dst
   net/netfilter/nf_flow_table_offload.c:125:32: sparse:     got unsigned int
   net/netfilter/nf_flow_table_offload.c:140:29: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be16 [usertype] n_proto @@     got int @@
   net/netfilter/nf_flow_table_offload.c:140:29: sparse:     expected restricted __be16 [usertype] n_proto
   net/netfilter/nf_flow_table_offload.c:140:29: sparse:     got int
   net/netfilter/nf_flow_table_offload.c:184:22: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be16 [usertype] src @@     got int @@
   net/netfilter/nf_flow_table_offload.c:184:22: sparse:     expected restricted __be16 [usertype] src
   net/netfilter/nf_flow_table_offload.c:184:22: sparse:     got int
   net/netfilter/nf_flow_table_offload.c:186:22: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be16 [usertype] dst @@     got int @@
   net/netfilter/nf_flow_table_offload.c:186:22: sparse:     expected restricted __be16 [usertype] dst
   net/netfilter/nf_flow_table_offload.c:186:22: sparse:     got int
   net/netfilter/nf_flow_table_offload.c:249:30: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected restricted __be32 const [usertype] *value @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:249:30: sparse:     expected restricted __be32 const [usertype] *value
   net/netfilter/nf_flow_table_offload.c:249:30: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:249:36: sparse: sparse: incorrect type in argument 5 (different base types) @@     expected restricted __be32 const [usertype] *mask @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:249:36: sparse:     expected restricted __be32 const [usertype] *mask
   net/netfilter/nf_flow_table_offload.c:249:36: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:254:30: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected restricted __be32 const [usertype] *value @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:254:30: sparse:     expected restricted __be32 const [usertype] *value
   net/netfilter/nf_flow_table_offload.c:254:30: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:254:36: sparse: sparse: incorrect type in argument 5 (different base types) @@     expected restricted __be32 const [usertype] *mask @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:254:36: sparse:     expected restricted __be32 const [usertype] *mask
   net/netfilter/nf_flow_table_offload.c:254:36: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:308:30: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected restricted __be32 const [usertype] *value @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:308:30: sparse:     expected restricted __be32 const [usertype] *value
   net/netfilter/nf_flow_table_offload.c:308:30: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:308:36: sparse: sparse: incorrect type in argument 5 (different base types) @@     expected restricted __be32 const [usertype] *mask @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:308:36: sparse:     expected restricted __be32 const [usertype] *mask
   net/netfilter/nf_flow_table_offload.c:308:36: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:314:30: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected restricted __be32 const [usertype] *value @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:314:30: sparse:     expected restricted __be32 const [usertype] *value
   net/netfilter/nf_flow_table_offload.c:314:30: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:314:36: sparse: sparse: incorrect type in argument 5 (different base types) @@     expected restricted __be32 const [usertype] *mask @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:314:36: sparse:     expected restricted __be32 const [usertype] *mask
   net/netfilter/nf_flow_table_offload.c:314:36: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:325:20: sparse: sparse: incorrect type in initializer (different base types) @@     expected unsigned int [usertype] mask @@     got restricted __be32 @@
   net/netfilter/nf_flow_table_offload.c:325:20: sparse:     expected unsigned int [usertype] mask
   net/netfilter/nf_flow_table_offload.c:325:20: sparse:     got restricted __be32
   net/netfilter/nf_flow_table_offload.c:343:37: sparse: sparse: incorrect type in argument 5 (different base types) @@     expected restricted __be32 const [usertype] *mask @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:343:37: sparse:     expected restricted __be32 const [usertype] *mask
   net/netfilter/nf_flow_table_offload.c:343:37: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:352:20: sparse: sparse: incorrect type in initializer (different base types) @@     expected unsigned int [usertype] mask @@     got restricted __be32 @@
   net/netfilter/nf_flow_table_offload.c:352:20: sparse:     expected unsigned int [usertype] mask
   net/netfilter/nf_flow_table_offload.c:352:20: sparse:     got restricted __be32
   net/netfilter/nf_flow_table_offload.c:370:37: sparse: sparse: incorrect type in argument 5 (different base types) @@     expected restricted __be32 const [usertype] *mask @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:370:37: sparse:     expected restricted __be32 const [usertype] *mask
   net/netfilter/nf_flow_table_offload.c:370:37: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:392:20: sparse: sparse: incorrect type in initializer (different base types) @@     expected unsigned int [usertype] mask @@     got restricted __be32 @@
   net/netfilter/nf_flow_table_offload.c:392:20: sparse:     expected unsigned int [usertype] mask
   net/netfilter/nf_flow_table_offload.c:392:20: sparse:     got restricted __be32
   net/netfilter/nf_flow_table_offload.c:409:60: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected restricted __be32 const [usertype] *mask @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:409:60: sparse:     expected restricted __be32 const [usertype] *mask
   net/netfilter/nf_flow_table_offload.c:409:60: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:417:20: sparse: sparse: incorrect type in initializer (different base types) @@     expected unsigned int [usertype] mask @@     got restricted __be32 @@
   net/netfilter/nf_flow_table_offload.c:417:20: sparse:     expected unsigned int [usertype] mask
   net/netfilter/nf_flow_table_offload.c:417:20: sparse:     got restricted __be32
   net/netfilter/nf_flow_table_offload.c:434:60: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected restricted __be32 const [usertype] *mask @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:434:60: sparse:     expected restricted __be32 const [usertype] *mask
   net/netfilter/nf_flow_table_offload.c:434:60: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:469:22: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [assigned] [usertype] port @@     got restricted __be32 [usertype] @@
   net/netfilter/nf_flow_table_offload.c:469:22: sparse:     expected unsigned int [assigned] [usertype] port
   net/netfilter/nf_flow_table_offload.c:469:22: sparse:     got restricted __be32 [usertype]
   net/netfilter/nf_flow_table_offload.c:470:22: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] mask @@     got restricted __be32 @@
   net/netfilter/nf_flow_table_offload.c:470:22: sparse:     expected unsigned int [usertype] mask
   net/netfilter/nf_flow_table_offload.c:470:22: sparse:     got restricted __be32
   net/netfilter/nf_flow_table_offload.c:475:22: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [assigned] [usertype] port @@     got restricted __be32 [usertype] @@
   net/netfilter/nf_flow_table_offload.c:475:22: sparse:     expected unsigned int [assigned] [usertype] port
   net/netfilter/nf_flow_table_offload.c:475:22: sparse:     got restricted __be32 [usertype]
   net/netfilter/nf_flow_table_offload.c:476:22: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] mask @@     got restricted __be32 @@
   net/netfilter/nf_flow_table_offload.c:476:22: sparse:     expected unsigned int [usertype] mask
   net/netfilter/nf_flow_table_offload.c:476:22: sparse:     got restricted __be32
   net/netfilter/nf_flow_table_offload.c:483:30: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected restricted __be32 const [usertype] *value @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:483:30: sparse:     expected restricted __be32 const [usertype] *value
   net/netfilter/nf_flow_table_offload.c:483:30: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:483:37: sparse: sparse: incorrect type in argument 5 (different base types) @@     expected restricted __be32 const [usertype] *mask @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:483:37: sparse:     expected restricted __be32 const [usertype] *mask
   net/netfilter/nf_flow_table_offload.c:483:37: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:499:22: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [assigned] [usertype] port @@     got restricted __be32 [usertype] @@
   net/netfilter/nf_flow_table_offload.c:499:22: sparse:     expected unsigned int [assigned] [usertype] port
   net/netfilter/nf_flow_table_offload.c:499:22: sparse:     got restricted __be32 [usertype]
   net/netfilter/nf_flow_table_offload.c:500:22: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] mask @@     got restricted __be32 @@
   net/netfilter/nf_flow_table_offload.c:500:22: sparse:     expected unsigned int [usertype] mask
   net/netfilter/nf_flow_table_offload.c:500:22: sparse:     got restricted __be32
   net/netfilter/nf_flow_table_offload.c:505:22: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [assigned] [usertype] port @@     got restricted __be32 [usertype] @@
   net/netfilter/nf_flow_table_offload.c:505:22: sparse:     expected unsigned int [assigned] [usertype] port
   net/netfilter/nf_flow_table_offload.c:505:22: sparse:     got restricted __be32 [usertype]
   net/netfilter/nf_flow_table_offload.c:506:22: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] mask @@     got restricted __be32 @@
   net/netfilter/nf_flow_table_offload.c:506:22: sparse:     expected unsigned int [usertype] mask
   net/netfilter/nf_flow_table_offload.c:506:22: sparse:     got restricted __be32
   net/netfilter/nf_flow_table_offload.c:513:30: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected restricted __be32 const [usertype] *value @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:513:30: sparse:     expected restricted __be32 const [usertype] *value
   net/netfilter/nf_flow_table_offload.c:513:30: sparse:     got unsigned int *
   net/netfilter/nf_flow_table_offload.c:513:37: sparse: sparse: incorrect type in argument 5 (different base types) @@     expected restricted __be32 const [usertype] *mask @@     got unsigned int * @@
   net/netfilter/nf_flow_table_offload.c:513:37: sparse:     expected restricted __be32 const [usertype] *mask

vim +90 net/netfilter/nf_flow_table_offload.c

    80	
    81	static void nf_flow_rule_vlan_match(struct flow_dissector_key_vlan *key,
    82					    struct flow_dissector_key_vlan *mask,
    83					    u16 vlan_id, __be16 n_proto)
    84	{
    85		key->vlan_id = vlan_id & VLAN_VID_MASK;
    86		mask->vlan_id = VLAN_VID_MASK;
    87		key->vlan_priority = (vlan_id & VLAN_PRIO_MASK) >> VLAN_PRIO_SHIFT;
    88		mask->vlan_priority = 0x7;
    89		key->vlan_tpid = n_proto;
  > 90		mask->vlan_tpid = 0xffff;
    91	}
    92	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Netfitler Users]     [Berkeley Packet Filter]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux