All of lore.kernel.org
 help / color / mirror / Atom feed
* [nf-next:master 2/3] net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit
@ 2020-07-16 14:42 ` kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2020-07-16 14:42 UTC (permalink / raw)
  To: Andrew Sy Kim
  Cc: kbuild-all, netfilter-devel, coreteam, Pablo Neira Ayuso,
	Julian Anastasov

[-- Attachment #1: Type: text/plain, Size: 4384 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master
head:   3354c27699652b271b78c85f275b818e6b9843e6
commit: 04231e52d3557475231abe8a8fa1be0330826ed6 [2/3] ipvs: queue delayed work to expire no destination connections if expire_nodest_conn=1
:::::: branch date: 5 hours ago
:::::: commit date: 5 hours ago
config: mips-randconfig-s032-20200715 (attached as .config)
compiler: mipsel-linux-gcc (GCC) 9.3.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.2-49-g707c5017-dirty
        git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=mips 

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


sparse warnings: (new ones prefixed by >>)

>> net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit

# https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=04231e52d3557475231abe8a8fa1be0330826ed6
git remote add nf-next https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git
git remote update nf-next
git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
vim +/ip_vs_expire_nodest_conn_flush +1394 net/netfilter/ipvs/ip_vs_conn.c

04231e52d355747 Andrew Sy Kim 2020-07-08  1392  
04231e52d355747 Andrew Sy Kim 2020-07-08  1393  #ifdef CONFIG_SYSCTL
04231e52d355747 Andrew Sy Kim 2020-07-08 @1394  void ip_vs_expire_nodest_conn_flush(struct netns_ipvs *ipvs)
04231e52d355747 Andrew Sy Kim 2020-07-08  1395  {
04231e52d355747 Andrew Sy Kim 2020-07-08  1396  	int idx;
04231e52d355747 Andrew Sy Kim 2020-07-08  1397  	struct ip_vs_conn *cp, *cp_c;
04231e52d355747 Andrew Sy Kim 2020-07-08  1398  	struct ip_vs_dest *dest;
04231e52d355747 Andrew Sy Kim 2020-07-08  1399  
04231e52d355747 Andrew Sy Kim 2020-07-08  1400  	rcu_read_lock();
04231e52d355747 Andrew Sy Kim 2020-07-08  1401  	for (idx = 0; idx < ip_vs_conn_tab_size; idx++) {
04231e52d355747 Andrew Sy Kim 2020-07-08  1402  		hlist_for_each_entry_rcu(cp, &ip_vs_conn_tab[idx], c_list) {
04231e52d355747 Andrew Sy Kim 2020-07-08  1403  			if (cp->ipvs != ipvs)
04231e52d355747 Andrew Sy Kim 2020-07-08  1404  				continue;
04231e52d355747 Andrew Sy Kim 2020-07-08  1405  
04231e52d355747 Andrew Sy Kim 2020-07-08  1406  			dest = cp->dest;
04231e52d355747 Andrew Sy Kim 2020-07-08  1407  			if (!dest || (dest->flags & IP_VS_DEST_F_AVAILABLE))
04231e52d355747 Andrew Sy Kim 2020-07-08  1408  				continue;
04231e52d355747 Andrew Sy Kim 2020-07-08  1409  
04231e52d355747 Andrew Sy Kim 2020-07-08  1410  			if (atomic_read(&cp->n_control))
04231e52d355747 Andrew Sy Kim 2020-07-08  1411  				continue;
04231e52d355747 Andrew Sy Kim 2020-07-08  1412  
04231e52d355747 Andrew Sy Kim 2020-07-08  1413  			cp_c = cp->control;
04231e52d355747 Andrew Sy Kim 2020-07-08  1414  			IP_VS_DBG(4, "del connection\n");
04231e52d355747 Andrew Sy Kim 2020-07-08  1415  			ip_vs_conn_del(cp);
04231e52d355747 Andrew Sy Kim 2020-07-08  1416  			if (cp_c && !atomic_read(&cp_c->n_control)) {
04231e52d355747 Andrew Sy Kim 2020-07-08  1417  				IP_VS_DBG(4, "del controlling connection\n");
04231e52d355747 Andrew Sy Kim 2020-07-08  1418  				ip_vs_conn_del(cp_c);
04231e52d355747 Andrew Sy Kim 2020-07-08  1419  			}
04231e52d355747 Andrew Sy Kim 2020-07-08  1420  		}
04231e52d355747 Andrew Sy Kim 2020-07-08  1421  		cond_resched_rcu();
04231e52d355747 Andrew Sy Kim 2020-07-08  1422  
04231e52d355747 Andrew Sy Kim 2020-07-08  1423  		/* netns clean up started, abort delayed work */
04231e52d355747 Andrew Sy Kim 2020-07-08  1424  		if (!ipvs->enable)
04231e52d355747 Andrew Sy Kim 2020-07-08  1425  			return;
04231e52d355747 Andrew Sy Kim 2020-07-08  1426  	}
04231e52d355747 Andrew Sy Kim 2020-07-08  1427  	rcu_read_unlock();
04231e52d355747 Andrew Sy Kim 2020-07-08  1428  }
04231e52d355747 Andrew Sy Kim 2020-07-08  1429  #endif
04231e52d355747 Andrew Sy Kim 2020-07-08  1430  

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 30564 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [nf-next:master 2/3] net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit
@ 2020-07-16 14:42 ` kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2020-07-16 14:42 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 4459 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master
head:   3354c27699652b271b78c85f275b818e6b9843e6
commit: 04231e52d3557475231abe8a8fa1be0330826ed6 [2/3] ipvs: queue delayed work to expire no destination connections if expire_nodest_conn=1
:::::: branch date: 5 hours ago
:::::: commit date: 5 hours ago
config: mips-randconfig-s032-20200715 (attached as .config)
compiler: mipsel-linux-gcc (GCC) 9.3.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.2-49-g707c5017-dirty
        git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=mips 

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


sparse warnings: (new ones prefixed by >>)

>> net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit

# https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=04231e52d3557475231abe8a8fa1be0330826ed6
git remote add nf-next https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git
git remote update nf-next
git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
vim +/ip_vs_expire_nodest_conn_flush +1394 net/netfilter/ipvs/ip_vs_conn.c

04231e52d355747 Andrew Sy Kim 2020-07-08  1392  
04231e52d355747 Andrew Sy Kim 2020-07-08  1393  #ifdef CONFIG_SYSCTL
04231e52d355747 Andrew Sy Kim 2020-07-08 @1394  void ip_vs_expire_nodest_conn_flush(struct netns_ipvs *ipvs)
04231e52d355747 Andrew Sy Kim 2020-07-08  1395  {
04231e52d355747 Andrew Sy Kim 2020-07-08  1396  	int idx;
04231e52d355747 Andrew Sy Kim 2020-07-08  1397  	struct ip_vs_conn *cp, *cp_c;
04231e52d355747 Andrew Sy Kim 2020-07-08  1398  	struct ip_vs_dest *dest;
04231e52d355747 Andrew Sy Kim 2020-07-08  1399  
04231e52d355747 Andrew Sy Kim 2020-07-08  1400  	rcu_read_lock();
04231e52d355747 Andrew Sy Kim 2020-07-08  1401  	for (idx = 0; idx < ip_vs_conn_tab_size; idx++) {
04231e52d355747 Andrew Sy Kim 2020-07-08  1402  		hlist_for_each_entry_rcu(cp, &ip_vs_conn_tab[idx], c_list) {
04231e52d355747 Andrew Sy Kim 2020-07-08  1403  			if (cp->ipvs != ipvs)
04231e52d355747 Andrew Sy Kim 2020-07-08  1404  				continue;
04231e52d355747 Andrew Sy Kim 2020-07-08  1405  
04231e52d355747 Andrew Sy Kim 2020-07-08  1406  			dest = cp->dest;
04231e52d355747 Andrew Sy Kim 2020-07-08  1407  			if (!dest || (dest->flags & IP_VS_DEST_F_AVAILABLE))
04231e52d355747 Andrew Sy Kim 2020-07-08  1408  				continue;
04231e52d355747 Andrew Sy Kim 2020-07-08  1409  
04231e52d355747 Andrew Sy Kim 2020-07-08  1410  			if (atomic_read(&cp->n_control))
04231e52d355747 Andrew Sy Kim 2020-07-08  1411  				continue;
04231e52d355747 Andrew Sy Kim 2020-07-08  1412  
04231e52d355747 Andrew Sy Kim 2020-07-08  1413  			cp_c = cp->control;
04231e52d355747 Andrew Sy Kim 2020-07-08  1414  			IP_VS_DBG(4, "del connection\n");
04231e52d355747 Andrew Sy Kim 2020-07-08  1415  			ip_vs_conn_del(cp);
04231e52d355747 Andrew Sy Kim 2020-07-08  1416  			if (cp_c && !atomic_read(&cp_c->n_control)) {
04231e52d355747 Andrew Sy Kim 2020-07-08  1417  				IP_VS_DBG(4, "del controlling connection\n");
04231e52d355747 Andrew Sy Kim 2020-07-08  1418  				ip_vs_conn_del(cp_c);
04231e52d355747 Andrew Sy Kim 2020-07-08  1419  			}
04231e52d355747 Andrew Sy Kim 2020-07-08  1420  		}
04231e52d355747 Andrew Sy Kim 2020-07-08  1421  		cond_resched_rcu();
04231e52d355747 Andrew Sy Kim 2020-07-08  1422  
04231e52d355747 Andrew Sy Kim 2020-07-08  1423  		/* netns clean up started, abort delayed work */
04231e52d355747 Andrew Sy Kim 2020-07-08  1424  		if (!ipvs->enable)
04231e52d355747 Andrew Sy Kim 2020-07-08  1425  			return;
04231e52d355747 Andrew Sy Kim 2020-07-08  1426  	}
04231e52d355747 Andrew Sy Kim 2020-07-08  1427  	rcu_read_unlock();
04231e52d355747 Andrew Sy Kim 2020-07-08  1428  }
04231e52d355747 Andrew Sy Kim 2020-07-08  1429  #endif
04231e52d355747 Andrew Sy Kim 2020-07-08  1430  

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 30564 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [nf-next:master 2/3] net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit
  2020-07-16 14:42 ` kernel test robot
@ 2020-07-16 16:14   ` Pablo Neira Ayuso
  -1 siblings, 0 replies; 8+ messages in thread
From: Pablo Neira Ayuso @ 2020-07-16 16:14 UTC (permalink / raw)
  To: kernel test robot
  Cc: Andrew Sy Kim, kbuild-all, netfilter-devel, coreteam, Julian Anastasov

On Thu, Jul 16, 2020 at 10:42:53PM +0800, kernel test robot wrote:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master
> head:   3354c27699652b271b78c85f275b818e6b9843e6
> commit: 04231e52d3557475231abe8a8fa1be0330826ed6 [2/3] ipvs: queue delayed work to expire no destination connections if expire_nodest_conn=1
> :::::: branch date: 5 hours ago
> :::::: commit date: 5 hours ago
> config: mips-randconfig-s032-20200715 (attached as .config)
> compiler: mipsel-linux-gcc (GCC) 9.3.0
> reproduce:
>         wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # apt-get install sparse
>         # sparse version: v0.6.2-49-g707c5017-dirty
>         git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
>         # save the attached .config to linux build tree
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=mips 
> 
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
> 
> 
> sparse warnings: (new ones prefixed by >>)
> 
> >> net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit
> 
> # https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=04231e52d3557475231abe8a8fa1be0330826ed6
> git remote add nf-next https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git
> git remote update nf-next
> git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
> vim +/ip_vs_expire_nodest_conn_flush +1394 net/netfilter/ipvs/ip_vs_conn.c
> 
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1392  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1393  #ifdef CONFIG_SYSCTL
> 04231e52d355747 Andrew Sy Kim 2020-07-08 @1394  void ip_vs_expire_nodest_conn_flush(struct netns_ipvs *ipvs)
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1395  {
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1396  	int idx;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1397  	struct ip_vs_conn *cp, *cp_c;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1398  	struct ip_vs_dest *dest;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1399  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1400  	rcu_read_lock();
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1401  	for (idx = 0; idx < ip_vs_conn_tab_size; idx++) {
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1402  		hlist_for_each_entry_rcu(cp, &ip_vs_conn_tab[idx], c_list) {
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1403  			if (cp->ipvs != ipvs)
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1404  				continue;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1405  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1406  			dest = cp->dest;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1407  			if (!dest || (dest->flags & IP_VS_DEST_F_AVAILABLE))
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1408  				continue;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1409  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1410  			if (atomic_read(&cp->n_control))
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1411  				continue;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1412  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1413  			cp_c = cp->control;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1414  			IP_VS_DBG(4, "del connection\n");
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1415  			ip_vs_conn_del(cp);
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1416  			if (cp_c && !atomic_read(&cp_c->n_control)) {
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1417  				IP_VS_DBG(4, "del controlling connection\n");
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1418  				ip_vs_conn_del(cp_c);
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1419  			}
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1420  		}
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1421  		cond_resched_rcu();
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1422  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1423  		/* netns clean up started, abort delayed work */
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1424  		if (!ipvs->enable)
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1425  			return;

                                        Missing rcu_read_unlock() here ?

> 04231e52d355747 Andrew Sy Kim 2020-07-08  1426  	}
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1427  	rcu_read_unlock();
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1428  }
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1429  #endif
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1430  
> 
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [nf-next:master 2/3] net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit
@ 2020-07-16 16:14   ` Pablo Neira Ayuso
  0 siblings, 0 replies; 8+ messages in thread
From: Pablo Neira Ayuso @ 2020-07-16 16:14 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 4753 bytes --]

On Thu, Jul 16, 2020 at 10:42:53PM +0800, kernel test robot wrote:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master
> head:   3354c27699652b271b78c85f275b818e6b9843e6
> commit: 04231e52d3557475231abe8a8fa1be0330826ed6 [2/3] ipvs: queue delayed work to expire no destination connections if expire_nodest_conn=1
> :::::: branch date: 5 hours ago
> :::::: commit date: 5 hours ago
> config: mips-randconfig-s032-20200715 (attached as .config)
> compiler: mipsel-linux-gcc (GCC) 9.3.0
> reproduce:
>         wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # apt-get install sparse
>         # sparse version: v0.6.2-49-g707c5017-dirty
>         git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
>         # save the attached .config to linux build tree
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=mips 
> 
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
> 
> 
> sparse warnings: (new ones prefixed by >>)
> 
> >> net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit
> 
> # https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=04231e52d3557475231abe8a8fa1be0330826ed6
> git remote add nf-next https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git
> git remote update nf-next
> git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
> vim +/ip_vs_expire_nodest_conn_flush +1394 net/netfilter/ipvs/ip_vs_conn.c
> 
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1392  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1393  #ifdef CONFIG_SYSCTL
> 04231e52d355747 Andrew Sy Kim 2020-07-08 @1394  void ip_vs_expire_nodest_conn_flush(struct netns_ipvs *ipvs)
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1395  {
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1396  	int idx;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1397  	struct ip_vs_conn *cp, *cp_c;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1398  	struct ip_vs_dest *dest;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1399  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1400  	rcu_read_lock();
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1401  	for (idx = 0; idx < ip_vs_conn_tab_size; idx++) {
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1402  		hlist_for_each_entry_rcu(cp, &ip_vs_conn_tab[idx], c_list) {
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1403  			if (cp->ipvs != ipvs)
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1404  				continue;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1405  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1406  			dest = cp->dest;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1407  			if (!dest || (dest->flags & IP_VS_DEST_F_AVAILABLE))
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1408  				continue;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1409  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1410  			if (atomic_read(&cp->n_control))
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1411  				continue;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1412  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1413  			cp_c = cp->control;
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1414  			IP_VS_DBG(4, "del connection\n");
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1415  			ip_vs_conn_del(cp);
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1416  			if (cp_c && !atomic_read(&cp_c->n_control)) {
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1417  				IP_VS_DBG(4, "del controlling connection\n");
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1418  				ip_vs_conn_del(cp_c);
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1419  			}
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1420  		}
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1421  		cond_resched_rcu();
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1422  
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1423  		/* netns clean up started, abort delayed work */
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1424  		if (!ipvs->enable)
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1425  			return;

                                        Missing rcu_read_unlock() here ?

> 04231e52d355747 Andrew Sy Kim 2020-07-08  1426  	}
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1427  	rcu_read_unlock();
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1428  }
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1429  #endif
> 04231e52d355747 Andrew Sy Kim 2020-07-08  1430  
> 
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [nf-next:master 2/3] net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit
  2020-07-16 16:14   ` Pablo Neira Ayuso
  (?)
@ 2020-07-16 16:47   ` Andrew Kim
  -1 siblings, 0 replies; 8+ messages in thread
From: Andrew Kim @ 2020-07-16 16:47 UTC (permalink / raw)
  To: Pablo Neira Ayuso
  Cc: kernel test robot, kbuild-all, open list:NETFILTER,
	open list:NETFILTER, Julian Anastasov

Will send a patch to fix this shortly :)

On Thu, Jul 16, 2020 at 12:14 PM Pablo Neira Ayuso <pablo@netfilter.org> wrote:
>
> On Thu, Jul 16, 2020 at 10:42:53PM +0800, kernel test robot wrote:
> > tree:   https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master
> > head:   3354c27699652b271b78c85f275b818e6b9843e6
> > commit: 04231e52d3557475231abe8a8fa1be0330826ed6 [2/3] ipvs: queue delayed work to expire no destination connections if expire_nodest_conn=1
> > :::::: branch date: 5 hours ago
> > :::::: commit date: 5 hours ago
> > config: mips-randconfig-s032-20200715 (attached as .config)
> > compiler: mipsel-linux-gcc (GCC) 9.3.0
> > reproduce:
> >         wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> >         chmod +x ~/bin/make.cross
> >         # apt-get install sparse
> >         # sparse version: v0.6.2-49-g707c5017-dirty
> >         git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
> >         # save the attached .config to linux build tree
> >         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=mips
> >
> > If you fix the issue, kindly add following tag as appropriate
> > Reported-by: kernel test robot <lkp@intel.com>
> >
> >
> > sparse warnings: (new ones prefixed by >>)
> >
> > >> net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit
> >
> > # https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=04231e52d3557475231abe8a8fa1be0330826ed6
> > git remote add nf-next https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git
> > git remote update nf-next
> > git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
> > vim +/ip_vs_expire_nodest_conn_flush +1394 net/netfilter/ipvs/ip_vs_conn.c
> >
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1392
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1393  #ifdef CONFIG_SYSCTL
> > 04231e52d355747 Andrew Sy Kim 2020-07-08 @1394  void ip_vs_expire_nodest_conn_flush(struct netns_ipvs *ipvs)
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1395  {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1396        int idx;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1397        struct ip_vs_conn *cp, *cp_c;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1398        struct ip_vs_dest *dest;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1399
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1400        rcu_read_lock();
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1401        for (idx = 0; idx < ip_vs_conn_tab_size; idx++) {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1402                hlist_for_each_entry_rcu(cp, &ip_vs_conn_tab[idx], c_list) {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1403                        if (cp->ipvs != ipvs)
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1404                                continue;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1405
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1406                        dest = cp->dest;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1407                        if (!dest || (dest->flags & IP_VS_DEST_F_AVAILABLE))
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1408                                continue;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1409
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1410                        if (atomic_read(&cp->n_control))
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1411                                continue;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1412
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1413                        cp_c = cp->control;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1414                        IP_VS_DBG(4, "del connection\n");
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1415                        ip_vs_conn_del(cp);
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1416                        if (cp_c && !atomic_read(&cp_c->n_control)) {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1417                                IP_VS_DBG(4, "del controlling connection\n");
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1418                                ip_vs_conn_del(cp_c);
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1419                        }
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1420                }
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1421                cond_resched_rcu();
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1422
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1423                /* netns clean up started, abort delayed work */
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1424                if (!ipvs->enable)
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1425                        return;
>
>                                         Missing rcu_read_unlock() here ?
>
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1426        }
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1427        rcu_read_unlock();
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1428  }
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1429  #endif
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1430
> >
> > ---
> > 0-DAY CI Kernel Test Service, Intel Corporation
> > https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
>
>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [nf-next:master 2/3] net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit
  2020-07-16 16:14   ` Pablo Neira Ayuso
@ 2020-07-16 16:55     ` Julian Anastasov
  -1 siblings, 0 replies; 8+ messages in thread
From: Julian Anastasov @ 2020-07-16 16:55 UTC (permalink / raw)
  To: Pablo Neira Ayuso
  Cc: kernel test robot, Andrew Sy Kim, kbuild-all, netfilter-devel, coreteam


	Hello,

On Thu, 16 Jul 2020, Pablo Neira Ayuso wrote:

> On Thu, Jul 16, 2020 at 10:42:53PM +0800, kernel test robot wrote:
> > 
> > # https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=04231e52d3557475231abe8a8fa1be0330826ed6
> > git remote add nf-next https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git
> > git remote update nf-next
> > git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
> > vim +/ip_vs_expire_nodest_conn_flush +1394 net/netfilter/ipvs/ip_vs_conn.c
> > 
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1392  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1393  #ifdef CONFIG_SYSCTL
> > 04231e52d355747 Andrew Sy Kim 2020-07-08 @1394  void ip_vs_expire_nodest_conn_flush(struct netns_ipvs *ipvs)
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1395  {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1396  	int idx;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1397  	struct ip_vs_conn *cp, *cp_c;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1398  	struct ip_vs_dest *dest;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1399  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1400  	rcu_read_lock();
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1401  	for (idx = 0; idx < ip_vs_conn_tab_size; idx++) {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1402  		hlist_for_each_entry_rcu(cp, &ip_vs_conn_tab[idx], c_list) {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1403  			if (cp->ipvs != ipvs)
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1404  				continue;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1405  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1406  			dest = cp->dest;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1407  			if (!dest || (dest->flags & IP_VS_DEST_F_AVAILABLE))
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1408  				continue;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1409  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1410  			if (atomic_read(&cp->n_control))
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1411  				continue;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1412  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1413  			cp_c = cp->control;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1414  			IP_VS_DBG(4, "del connection\n");
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1415  			ip_vs_conn_del(cp);
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1416  			if (cp_c && !atomic_read(&cp_c->n_control)) {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1417  				IP_VS_DBG(4, "del controlling connection\n");
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1418  				ip_vs_conn_del(cp_c);
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1419  			}
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1420  		}
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1421  		cond_resched_rcu();
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1422  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1423  		/* netns clean up started, abort delayed work */
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1424  		if (!ipvs->enable)
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1425  			return;
> 
>                                         Missing rcu_read_unlock() here ?

	I suggested this code with a 'break' but later didn't
notice it is a 'return'... May be Andrew will provide a fix?

Regards

--
Julian Anastasov <ja@ssi.bg>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [nf-next:master 2/3] net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit
@ 2020-07-16 16:55     ` Julian Anastasov
  0 siblings, 0 replies; 8+ messages in thread
From: Julian Anastasov @ 2020-07-16 16:55 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 3370 bytes --]


	Hello,

On Thu, 16 Jul 2020, Pablo Neira Ayuso wrote:

> On Thu, Jul 16, 2020 at 10:42:53PM +0800, kernel test robot wrote:
> > 
> > # https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=04231e52d3557475231abe8a8fa1be0330826ed6
> > git remote add nf-next https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git
> > git remote update nf-next
> > git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
> > vim +/ip_vs_expire_nodest_conn_flush +1394 net/netfilter/ipvs/ip_vs_conn.c
> > 
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1392  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1393  #ifdef CONFIG_SYSCTL
> > 04231e52d355747 Andrew Sy Kim 2020-07-08 @1394  void ip_vs_expire_nodest_conn_flush(struct netns_ipvs *ipvs)
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1395  {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1396  	int idx;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1397  	struct ip_vs_conn *cp, *cp_c;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1398  	struct ip_vs_dest *dest;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1399  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1400  	rcu_read_lock();
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1401  	for (idx = 0; idx < ip_vs_conn_tab_size; idx++) {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1402  		hlist_for_each_entry_rcu(cp, &ip_vs_conn_tab[idx], c_list) {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1403  			if (cp->ipvs != ipvs)
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1404  				continue;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1405  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1406  			dest = cp->dest;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1407  			if (!dest || (dest->flags & IP_VS_DEST_F_AVAILABLE))
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1408  				continue;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1409  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1410  			if (atomic_read(&cp->n_control))
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1411  				continue;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1412  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1413  			cp_c = cp->control;
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1414  			IP_VS_DBG(4, "del connection\n");
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1415  			ip_vs_conn_del(cp);
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1416  			if (cp_c && !atomic_read(&cp_c->n_control)) {
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1417  				IP_VS_DBG(4, "del controlling connection\n");
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1418  				ip_vs_conn_del(cp_c);
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1419  			}
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1420  		}
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1421  		cond_resched_rcu();
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1422  
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1423  		/* netns clean up started, abort delayed work */
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1424  		if (!ipvs->enable)
> > 04231e52d355747 Andrew Sy Kim 2020-07-08  1425  			return;
> 
>                                         Missing rcu_read_unlock() here ?

	I suggested this code with a 'break' but later didn't
notice it is a 'return'... May be Andrew will provide a fix?

Regards

--
Julian Anastasov <ja@ssi.bg>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [nf-next:master 2/3] net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit
@ 2020-07-16  1:33 kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2020-07-16  1:33 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 4684 bytes --]

CC: kbuild-all(a)lists.01.org
CC: netfilter-devel(a)vger.kernel.org
CC: coreteam(a)netfilter.org
TO: Andrew Sy Kim <kim.andrewsy@gmail.com>
CC: Pablo Neira Ayuso <pablo@netfilter.org>
CC: Julian Anastasov <ja@ssi.bg>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master
head:   3354c27699652b271b78c85f275b818e6b9843e6
commit: 04231e52d3557475231abe8a8fa1be0330826ed6 [2/3] ipvs: queue delayed work to expire no destination connections if expire_nodest_conn=1
:::::: branch date: 5 hours ago
:::::: commit date: 5 hours ago
config: mips-randconfig-s032-20200715 (attached as .config)
compiler: mipsel-linux-gcc (GCC) 9.3.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.2-49-g707c5017-dirty
        git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=mips 

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


sparse warnings: (new ones prefixed by >>)

>> net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit

# https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=04231e52d3557475231abe8a8fa1be0330826ed6
git remote add nf-next https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git
git remote update nf-next
git checkout 04231e52d3557475231abe8a8fa1be0330826ed6
vim +/ip_vs_expire_nodest_conn_flush +1394 net/netfilter/ipvs/ip_vs_conn.c

04231e52d355747 Andrew Sy Kim 2020-07-08  1392  
04231e52d355747 Andrew Sy Kim 2020-07-08  1393  #ifdef CONFIG_SYSCTL
04231e52d355747 Andrew Sy Kim 2020-07-08 @1394  void ip_vs_expire_nodest_conn_flush(struct netns_ipvs *ipvs)
04231e52d355747 Andrew Sy Kim 2020-07-08  1395  {
04231e52d355747 Andrew Sy Kim 2020-07-08  1396  	int idx;
04231e52d355747 Andrew Sy Kim 2020-07-08  1397  	struct ip_vs_conn *cp, *cp_c;
04231e52d355747 Andrew Sy Kim 2020-07-08  1398  	struct ip_vs_dest *dest;
04231e52d355747 Andrew Sy Kim 2020-07-08  1399  
04231e52d355747 Andrew Sy Kim 2020-07-08  1400  	rcu_read_lock();
04231e52d355747 Andrew Sy Kim 2020-07-08  1401  	for (idx = 0; idx < ip_vs_conn_tab_size; idx++) {
04231e52d355747 Andrew Sy Kim 2020-07-08  1402  		hlist_for_each_entry_rcu(cp, &ip_vs_conn_tab[idx], c_list) {
04231e52d355747 Andrew Sy Kim 2020-07-08  1403  			if (cp->ipvs != ipvs)
04231e52d355747 Andrew Sy Kim 2020-07-08  1404  				continue;
04231e52d355747 Andrew Sy Kim 2020-07-08  1405  
04231e52d355747 Andrew Sy Kim 2020-07-08  1406  			dest = cp->dest;
04231e52d355747 Andrew Sy Kim 2020-07-08  1407  			if (!dest || (dest->flags & IP_VS_DEST_F_AVAILABLE))
04231e52d355747 Andrew Sy Kim 2020-07-08  1408  				continue;
04231e52d355747 Andrew Sy Kim 2020-07-08  1409  
04231e52d355747 Andrew Sy Kim 2020-07-08  1410  			if (atomic_read(&cp->n_control))
04231e52d355747 Andrew Sy Kim 2020-07-08  1411  				continue;
04231e52d355747 Andrew Sy Kim 2020-07-08  1412  
04231e52d355747 Andrew Sy Kim 2020-07-08  1413  			cp_c = cp->control;
04231e52d355747 Andrew Sy Kim 2020-07-08  1414  			IP_VS_DBG(4, "del connection\n");
04231e52d355747 Andrew Sy Kim 2020-07-08  1415  			ip_vs_conn_del(cp);
04231e52d355747 Andrew Sy Kim 2020-07-08  1416  			if (cp_c && !atomic_read(&cp_c->n_control)) {
04231e52d355747 Andrew Sy Kim 2020-07-08  1417  				IP_VS_DBG(4, "del controlling connection\n");
04231e52d355747 Andrew Sy Kim 2020-07-08  1418  				ip_vs_conn_del(cp_c);
04231e52d355747 Andrew Sy Kim 2020-07-08  1419  			}
04231e52d355747 Andrew Sy Kim 2020-07-08  1420  		}
04231e52d355747 Andrew Sy Kim 2020-07-08  1421  		cond_resched_rcu();
04231e52d355747 Andrew Sy Kim 2020-07-08  1422  
04231e52d355747 Andrew Sy Kim 2020-07-08  1423  		/* netns clean up started, abort delayed work */
04231e52d355747 Andrew Sy Kim 2020-07-08  1424  		if (!ipvs->enable)
04231e52d355747 Andrew Sy Kim 2020-07-08  1425  			return;
04231e52d355747 Andrew Sy Kim 2020-07-08  1426  	}
04231e52d355747 Andrew Sy Kim 2020-07-08  1427  	rcu_read_unlock();
04231e52d355747 Andrew Sy Kim 2020-07-08  1428  }
04231e52d355747 Andrew Sy Kim 2020-07-08  1429  #endif
04231e52d355747 Andrew Sy Kim 2020-07-08  1430  

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 30564 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-07-16 16:55 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-16 14:42 [nf-next:master 2/3] net/netfilter/ipvs/ip_vs_conn.c:1394:6: sparse: sparse: context imbalance in 'ip_vs_expire_nodest_conn_flush' - wrong count at exit kernel test robot
2020-07-16 14:42 ` kernel test robot
2020-07-16 16:14 ` Pablo Neira Ayuso
2020-07-16 16:14   ` Pablo Neira Ayuso
2020-07-16 16:47   ` Andrew Kim
2020-07-16 16:55   ` Julian Anastasov
2020-07-16 16:55     ` Julian Anastasov
  -- strict thread matches above, loose matches on Subject: below --
2020-07-16  1:33 kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.