public inbox for llvm@lists.linux.dev
 help / color / mirror / Atom feed
* Re: [PATCH net-next v2 2/3] net: mirror skb frag ref/unref helpers
       [not found] <20240327214523.2182174-3-almasrymina@google.com>
@ 2024-03-28 17:07 ` kernel test robot
  2024-03-28 17:18 ` kernel test robot
  1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2024-03-28 17:07 UTC (permalink / raw)
  To: Mina Almasry, netdev, linux-kernel, linux-rdma
  Cc: llvm, oe-kbuild-all, Mina Almasry, Ayush Sawal, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Mirko Lindner, Stephen Hemminger,
	Tariq Toukan, Steffen Klassert, Herbert Xu, David Ahern,
	Boris Pismenny, John Fastabend, Dragos Tatulea

Hi Mina,

kernel test robot noticed the following build errors:

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

url:    https://github.com/intel-lab-lkp/linux/commits/Mina-Almasry/net-make-napi_frag_unref-reuse-skb_page_unref/20240328-054816
base:   net-next/main
patch link:    https://lore.kernel.org/r/20240327214523.2182174-3-almasrymina%40google.com
patch subject: [PATCH net-next v2 2/3] net: mirror skb frag ref/unref helpers
config: x86_64-rhel-8.3-rust (https://download.01.org/0day-ci/archive/20240329/202403290006.WfusvToB-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240329/202403290006.WfusvToB-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
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202403290006.WfusvToB-lkp@intel.com/

All errors (new ones prefixed by >>):

>> net/tls/tls_device_fallback.c:280:22: error: too few arguments to function call, expected 2, have 1
     280 |                 __skb_frag_ref(frag);
         |                 ~~~~~~~~~~~~~~     ^
   include/linux/skbuff.h:3517:20: note: '__skb_frag_ref' declared here
    3517 | static inline void __skb_frag_ref(skb_frag_t *frag, bool recycle)
         |                    ^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   1 error generated.


vim +280 net/tls/tls_device_fallback.c

e8f69799810c32 Ilya Lesokhin  2018-04-30  228  
e8f69799810c32 Ilya Lesokhin  2018-04-30  229  /* This function may be called after the user socket is already
e8f69799810c32 Ilya Lesokhin  2018-04-30  230   * closed so make sure we don't use anything freed during
e8f69799810c32 Ilya Lesokhin  2018-04-30  231   * tls_sk_proto_close here
e8f69799810c32 Ilya Lesokhin  2018-04-30  232   */
e8f69799810c32 Ilya Lesokhin  2018-04-30  233  
e8f69799810c32 Ilya Lesokhin  2018-04-30  234  static int fill_sg_in(struct scatterlist *sg_in,
e8f69799810c32 Ilya Lesokhin  2018-04-30  235  		      struct sk_buff *skb,
d80a1b9d186057 Boris Pismenny 2018-07-13  236  		      struct tls_offload_context_tx *ctx,
e8f69799810c32 Ilya Lesokhin  2018-04-30  237  		      u64 *rcd_sn,
e8f69799810c32 Ilya Lesokhin  2018-04-30  238  		      s32 *sync_size,
e8f69799810c32 Ilya Lesokhin  2018-04-30  239  		      int *resync_sgs)
e8f69799810c32 Ilya Lesokhin  2018-04-30  240  {
504148fedb8542 Eric Dumazet   2022-06-30  241  	int tcp_payload_offset = skb_tcp_all_headers(skb);
e8f69799810c32 Ilya Lesokhin  2018-04-30  242  	int payload_len = skb->len - tcp_payload_offset;
e8f69799810c32 Ilya Lesokhin  2018-04-30  243  	u32 tcp_seq = ntohl(tcp_hdr(skb)->seq);
e8f69799810c32 Ilya Lesokhin  2018-04-30  244  	struct tls_record_info *record;
e8f69799810c32 Ilya Lesokhin  2018-04-30  245  	unsigned long flags;
e8f69799810c32 Ilya Lesokhin  2018-04-30  246  	int remaining;
e8f69799810c32 Ilya Lesokhin  2018-04-30  247  	int i;
e8f69799810c32 Ilya Lesokhin  2018-04-30  248  
e8f69799810c32 Ilya Lesokhin  2018-04-30  249  	spin_lock_irqsave(&ctx->lock, flags);
e8f69799810c32 Ilya Lesokhin  2018-04-30  250  	record = tls_get_record(ctx, tcp_seq, rcd_sn);
e8f69799810c32 Ilya Lesokhin  2018-04-30  251  	if (!record) {
e8f69799810c32 Ilya Lesokhin  2018-04-30  252  		spin_unlock_irqrestore(&ctx->lock, flags);
e8f69799810c32 Ilya Lesokhin  2018-04-30  253  		return -EINVAL;
e8f69799810c32 Ilya Lesokhin  2018-04-30  254  	}
e8f69799810c32 Ilya Lesokhin  2018-04-30  255  
e8f69799810c32 Ilya Lesokhin  2018-04-30  256  	*sync_size = tcp_seq - tls_record_start_seq(record);
e8f69799810c32 Ilya Lesokhin  2018-04-30  257  	if (*sync_size < 0) {
e8f69799810c32 Ilya Lesokhin  2018-04-30  258  		int is_start_marker = tls_record_is_start_marker(record);
e8f69799810c32 Ilya Lesokhin  2018-04-30  259  
e8f69799810c32 Ilya Lesokhin  2018-04-30  260  		spin_unlock_irqrestore(&ctx->lock, flags);
e8f69799810c32 Ilya Lesokhin  2018-04-30  261  		/* This should only occur if the relevant record was
e8f69799810c32 Ilya Lesokhin  2018-04-30  262  		 * already acked. In that case it should be ok
e8f69799810c32 Ilya Lesokhin  2018-04-30  263  		 * to drop the packet and avoid retransmission.
e8f69799810c32 Ilya Lesokhin  2018-04-30  264  		 *
e8f69799810c32 Ilya Lesokhin  2018-04-30  265  		 * There is a corner case where the packet contains
e8f69799810c32 Ilya Lesokhin  2018-04-30  266  		 * both an acked and a non-acked record.
e8f69799810c32 Ilya Lesokhin  2018-04-30  267  		 * We currently don't handle that case and rely
a0e128ef88e4a0 Yueh-Shun Li   2023-06-22  268  		 * on TCP to retransmit a packet that doesn't contain
e8f69799810c32 Ilya Lesokhin  2018-04-30  269  		 * already acked payload.
e8f69799810c32 Ilya Lesokhin  2018-04-30  270  		 */
e8f69799810c32 Ilya Lesokhin  2018-04-30  271  		if (!is_start_marker)
e8f69799810c32 Ilya Lesokhin  2018-04-30  272  			*sync_size = 0;
e8f69799810c32 Ilya Lesokhin  2018-04-30  273  		return -EINVAL;
e8f69799810c32 Ilya Lesokhin  2018-04-30  274  	}
e8f69799810c32 Ilya Lesokhin  2018-04-30  275  
e8f69799810c32 Ilya Lesokhin  2018-04-30  276  	remaining = *sync_size;
e8f69799810c32 Ilya Lesokhin  2018-04-30  277  	for (i = 0; remaining > 0; i++) {
e8f69799810c32 Ilya Lesokhin  2018-04-30  278  		skb_frag_t *frag = &record->frags[i];
e8f69799810c32 Ilya Lesokhin  2018-04-30  279  
e8f69799810c32 Ilya Lesokhin  2018-04-30 @280  		__skb_frag_ref(frag);
e8f69799810c32 Ilya Lesokhin  2018-04-30  281  		sg_set_page(sg_in + i, skb_frag_page(frag),
b54c9d5bd6e38e Jonathan Lemon 2019-07-30  282  			    skb_frag_size(frag), skb_frag_off(frag));
e8f69799810c32 Ilya Lesokhin  2018-04-30  283  
e8f69799810c32 Ilya Lesokhin  2018-04-30  284  		remaining -= skb_frag_size(frag);
e8f69799810c32 Ilya Lesokhin  2018-04-30  285  
e8f69799810c32 Ilya Lesokhin  2018-04-30  286  		if (remaining < 0)
e8f69799810c32 Ilya Lesokhin  2018-04-30  287  			sg_in[i].length += remaining;
e8f69799810c32 Ilya Lesokhin  2018-04-30  288  	}
e8f69799810c32 Ilya Lesokhin  2018-04-30  289  	*resync_sgs = i;
e8f69799810c32 Ilya Lesokhin  2018-04-30  290  
e8f69799810c32 Ilya Lesokhin  2018-04-30  291  	spin_unlock_irqrestore(&ctx->lock, flags);
e8f69799810c32 Ilya Lesokhin  2018-04-30  292  	if (skb_to_sgvec(skb, &sg_in[i], tcp_payload_offset, payload_len) < 0)
e8f69799810c32 Ilya Lesokhin  2018-04-30  293  		return -EINVAL;
e8f69799810c32 Ilya Lesokhin  2018-04-30  294  
e8f69799810c32 Ilya Lesokhin  2018-04-30  295  	return 0;
e8f69799810c32 Ilya Lesokhin  2018-04-30  296  }
e8f69799810c32 Ilya Lesokhin  2018-04-30  297  

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

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

* Re: [PATCH net-next v2 2/3] net: mirror skb frag ref/unref helpers
       [not found] <20240327214523.2182174-3-almasrymina@google.com>
  2024-03-28 17:07 ` [PATCH net-next v2 2/3] net: mirror skb frag ref/unref helpers kernel test robot
@ 2024-03-28 17:18 ` kernel test robot
  1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2024-03-28 17:18 UTC (permalink / raw)
  To: Mina Almasry, netdev, linux-kernel, linux-rdma
  Cc: llvm, oe-kbuild-all, Mina Almasry, Ayush Sawal, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Mirko Lindner, Stephen Hemminger,
	Tariq Toukan, Steffen Klassert, Herbert Xu, David Ahern,
	Boris Pismenny, John Fastabend, Dragos Tatulea

Hi Mina,

kernel test robot noticed the following build errors:

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

url:    https://github.com/intel-lab-lkp/linux/commits/Mina-Almasry/net-make-napi_frag_unref-reuse-skb_page_unref/20240328-054816
base:   net-next/main
patch link:    https://lore.kernel.org/r/20240327214523.2182174-3-almasrymina%40google.com
patch subject: [PATCH net-next v2 2/3] net: mirror skb frag ref/unref helpers
config: riscv-defconfig (https://download.01.org/0day-ci/archive/20240329/202403290103.BHENUIYW-lkp@intel.com/config)
compiler: clang version 19.0.0git (https://github.com/llvm/llvm-project 23de3862dce582ce91c1aa914467d982cb1a73b4)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240329/202403290103.BHENUIYW-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
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202403290103.BHENUIYW-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from net/core/skbuff.c:40:
   In file included from include/linux/mm.h:2208:
   include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
     522 |         return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
         |                               ~~~~~~~~~~~ ^ ~~~
>> net/core/skbuff.c:1016:21: error: use of undeclared identifier 'head_page'
    1016 |         page_pool_ref_page(head_page);
         |                            ^
   1 warning and 1 error generated.


vim +/head_page +1016 net/core/skbuff.c

  1010	
  1011		page = compound_head(page);
  1012	
  1013		if (!is_pp_page(page))
  1014			return false;
  1015	
> 1016		page_pool_ref_page(head_page);
  1017		return true;
  1018	}
  1019	EXPORT_SYMBOL(napi_pp_get_page);
  1020	

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

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

end of thread, other threads:[~2024-03-28 17:19 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20240327214523.2182174-3-almasrymina@google.com>
2024-03-28 17:07 ` [PATCH net-next v2 2/3] net: mirror skb frag ref/unref helpers kernel test robot
2024-03-28 17:18 ` 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