Subject: Re: [PATCH net-next v2 12/12] net: homa: create Makefile and Kconfig

From: kernel test robot <[email-masked]>
Date: Wed, 13 Nov 2024 21:52:59 +0800

Hi John,

kernel test robot noticed the following build warnings:

[auto build test WARNING on net-next/main]

url:    https://github.com/intel-lab-lkp/linux/commits/John-Ousterhout/net-homa-define-user-visible-API-for-Homa/20241112-074535
base:   net-next/main
patch link:    https://lore.kernel.org/r/20241111234006.5942-13-ouster%40cs.stanford.edu
patch subject: [PATCH net-next v2 12/12] net: homa: create Makefile and Kconfig
config: riscv-randconfig-r112-20241113 (https://download.01.org/0day-ci/archive/20241113/[email-masked]/config)
compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 592c0fe55f6d9a811028b5f3507be91458ab2713)
reproduce: (https://download.01.org/0day-ci/archive/20241113/[email-masked]/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 <[email-masked]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email-masked]/

sparse warnings: (new ones prefixed by >>)
>> net/homa/homa_sock.c:201:31: sparse: sparse: cast removes address space '__rcu' of expression
   net/homa/homa_sock.c:248:17: sparse: sparse: context imbalance in 'homa_sock_shutdown' - different lock contexts for basic block
   net/homa/homa_sock.c:303:21: sparse: sparse: context imbalance in 'homa_sock_bind' - different lock contexts for basic block

vim +/__rcu +201 net/homa/homa_sock.c

8ddf00265eb650 John Ousterhout 2024-11-11  183  
8ddf00265eb650 John Ousterhout 2024-11-11  184  /*
8ddf00265eb650 John Ousterhout 2024-11-11  185   * homa_sock_unlink() - Unlinks a socket from its socktab and does
8ddf00265eb650 John Ousterhout 2024-11-11  186   * related cleanups. Once this method returns, the socket will not be
8ddf00265eb650 John Ousterhout 2024-11-11  187   * discoverable through the socktab.
8ddf00265eb650 John Ousterhout 2024-11-11  188   */
8ddf00265eb650 John Ousterhout 2024-11-11  189  void homa_sock_unlink(struct homa_sock *hsk)
8ddf00265eb650 John Ousterhout 2024-11-11  190  {
8ddf00265eb650 John Ousterhout 2024-11-11  191  	struct homa_socktab *socktab = hsk->homa->port_map;
8ddf00265eb650 John Ousterhout 2024-11-11  192  	struct homa_socktab_scan *scan;
8ddf00265eb650 John Ousterhout 2024-11-11  193  
8ddf00265eb650 John Ousterhout 2024-11-11  194  	/* If any scans refer to this socket, advance them to refer to
8ddf00265eb650 John Ousterhout 2024-11-11  195  	 * the next socket instead.
8ddf00265eb650 John Ousterhout 2024-11-11  196  	 */
8ddf00265eb650 John Ousterhout 2024-11-11  197  	spin_lock_bh(&socktab->write_lock);
8ddf00265eb650 John Ousterhout 2024-11-11  198  	list_for_each_entry(scan, &socktab->active_scans, scan_links) {
8ddf00265eb650 John Ousterhout 2024-11-11  199  		if (!scan->next || scan->next->sock != hsk)
8ddf00265eb650 John Ousterhout 2024-11-11  200  			continue;
8ddf00265eb650 John Ousterhout 2024-11-11 @201  		scan->next = (struct homa_socktab_links *)hlist_next_rcu(&scan
8ddf00265eb650 John Ousterhout 2024-11-11  202  				->next->hash_links);
8ddf00265eb650 John Ousterhout 2024-11-11  203  	}
8ddf00265eb650 John Ousterhout 2024-11-11  204  	hlist_del_rcu(&hsk->socktab_links.hash_links);
8ddf00265eb650 John Ousterhout 2024-11-11  205  	spin_unlock_bh(&socktab->write_lock);
8ddf00265eb650 John Ousterhout 2024-11-11  206  }
8ddf00265eb650 John Ousterhout 2024-11-11  207  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki