From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============4390311908506210892==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: Re: [RFC PATCH 07/11] net: Introduce global queues Date: Thu, 25 Jun 2020 07:58:14 +0800 Message-ID: <202006250712.agVoufFI%lkp@intel.com> In-Reply-To: <20200624171749.11927-8-tom@herbertland.com> List-Id: --===============4390311908506210892== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi Tom, [FYI, it's a private test report for your RFC patch.] [auto build test WARNING on net/master] [also build test WARNING on ipvs/master net-next/master linus/master v5.8-r= c2 next-20200624] [cannot apply to cgroup/for-next] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Tom-Herbert/ptq-Per-Thread= -Queues/20200625-012135 base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git 02758= 75530f692c725c6f993aced2eca2d6ac50c config: s390-randconfig-s031-20200624 (attached as .config) compiler: s390-linux-gcc (GCC) 9.3.0 reproduce: # apt-get install sparse # sparse version: v0.6.2-dirty # save the attached .config to linux build tree make W=3D1 C=3D1 ARCH=3Ds390 CF=3D'-fdiagnostic-prefix -D__CHECK_EN= DIAN__' If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) >> net/core/net-sysfs.c:901:18: sparse: sparse: incompatible types in compa= rison expression (different address spaces): net/core/net-sysfs.c:901:18: sparse: struct netdev_queue_map [noderef= ] * >> net/core/net-sysfs.c:901:18: sparse: struct netdev_queue_map * net/core/net-sysfs.c:915:33: sparse: sparse: incompatible types in compa= rison expression (different address spaces): net/core/net-sysfs.c:915:33: sparse: struct netdev_queue_map [noderef= ] * net/core/net-sysfs.c:915:33: sparse: struct netdev_queue_map * net/core/net-sysfs.c:976:17: sparse: sparse: incompatible types in compa= rison expression (different address spaces): net/core/net-sysfs.c:976:17: sparse: struct netdev_queue_map [noderef= ] * net/core/net-sysfs.c:976:17: sparse: struct netdev_queue_map * net/core/net-sysfs.c:1017:46: sparse: sparse: incorrect type in argument= 1 (different address spaces) @@ expected struct netdev_queue_map **pma= p @@ got struct netdev_queue_map [noderef] ** @@ net/core/net-sysfs.c:1050:40: sparse: sparse: incorrect type in argument= 1 (different address spaces) @@ expected struct netdev_queue_map **pma= p @@ got struct netdev_queue_map [noderef] ** @@ net/core/net-sysfs.c:1335:46: sparse: sparse: incorrect type in argument= 1 (different address spaces) @@ expected struct netdev_queue_map **pma= p @@ got struct netdev_queue_map [noderef] ** @@ net/core/net-sysfs.c:1693:40: sparse: sparse: incorrect type in argument= 1 (different address spaces) @@ expected struct netdev_queue_map **pma= p @@ got struct netdev_queue_map [noderef] ** @@ vim +901 net/core/net-sysfs.c 884 = 885 static int set_device_queue_mapping(struct netdev_queue_map **pmap, 886 u16 gqid, u16 dqid, u16 *p_gqid) 887 { 888 static DEFINE_MUTEX(global_mapping_table); 889 struct netdev_queue_map *gq_map, *old_gq_map; 890 u16 old_gqid; 891 int ret =3D 0; 892 = 893 mutex_lock(&global_mapping_table); 894 = 895 old_gqid =3D *p_gqid; 896 if (old_gqid =3D=3D gqid) { 897 /* Nothing changing */ 898 goto out; 899 } 900 = > 901 gq_map =3D rcu_dereference_protected(*pmap, 902 lockdep_is_held(&global_mapping_table)); 903 old_gq_map =3D gq_map; 904 = 905 if (gqid =3D=3D NO_QUEUE) { 906 /* Remove any old mapping (we know that old_gqid cannot be 907 * NO_QUEUE from above) 908 */ 909 if (!WARN_ON(!gq_map || old_gqid > gq_map->max_ents || 910 gq_map->map[old_gqid] !=3D dqid)) { 911 /* Unset old mapping */ 912 gq_map->map[old_gqid] =3D NO_QUEUE; 913 if (--gq_map->set_count =3D=3D 0) { 914 /* Done with map so free */ 915 rcu_assign_pointer(*pmap, NULL); 916 call_rcu(&gq_map->rcu, queue_map_release); 917 } 918 } 919 *p_gqid =3D NO_QUEUE; 920 = 921 goto out; 922 } 923 = 924 if (!gq_map || gqid >=3D gq_map->max_ents) { 925 unsigned int max_queues; 926 int i =3D 0; 927 = 928 /* Need to create or expand queue map */ 929 = 930 max_queues =3D QUEUE_MAP_ALLOC_NUMBER(gqid + 1); 931 = 932 gq_map =3D vmalloc(QUEUE_MAP_ALLOC_SIZE(max_queues)); 933 if (!gq_map) { 934 ret =3D -ENOMEM; 935 goto out; 936 } 937 = 938 gq_map->max_ents =3D max_queues; 939 = 940 if (old_gq_map) { 941 /* Copy old map entries */ 942 = 943 memcpy(gq_map->map, old_gq_map->map, 944 old_gq_map->max_ents * sizeof(gq_map->map[0])); 945 gq_map->set_count =3D old_gq_map->set_count; 946 i =3D old_gq_map->max_ents; 947 } else { 948 gq_map->set_count =3D 0; 949 } 950 = 951 /* Initialize entries not copied from old map */ 952 for (; i < max_queues; i++) 953 gq_map->map[i] =3D NO_QUEUE; 954 } else if (gq_map->map[gqid] !=3D NO_QUEUE) { 955 /* The global qid is already mapped to another device qid */ 956 ret =3D -EBUSY; 957 goto out; 958 } 959 = 960 /* Set map entry */ 961 gq_map->map[gqid] =3D dqid; 962 gq_map->set_count++; 963 = 964 if (old_gqid !=3D NO_QUEUE) { 965 /* We know old_gqid is not equal to gqid */ 966 if (!WARN_ON(!old_gq_map || 967 old_gqid > old_gq_map->max_ents || 968 old_gq_map->map[old_gqid] !=3D dqid)) { 969 /* Unset old mapping in (new) table */ 970 gq_map->map[old_gqid] =3D NO_QUEUE; 971 gq_map->set_count--; 972 } 973 } 974 = 975 if (gq_map !=3D old_gq_map) { 976 rcu_assign_pointer(*pmap, gq_map); 977 if (old_gq_map) 978 call_rcu(&old_gq_map->rcu, queue_map_release); 979 } 980 = 981 /* Save for caller */ 982 *p_gqid =3D gqid; 983 = 984 out: 985 mutex_unlock(&global_mapping_table); 986 = 987 return ret; 988 } 989 = --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============4390311908506210892== Content-Type: application/gzip MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.gz" 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 dRGHx3+ErpDOZjYBAA== --===============4390311908506210892==--