All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: [ammarfaizi2-block:bpf/bpf-next/master 186/270] net/ipv4/tcp_bpf.c:354:4: warning: Argument to kfree() is the address of the local variable 'tmp', which is not memory allocated by malloc() [clang-analyzer-unix.Malloc]
Date: Wed, 23 Mar 2022 09:35:49 +0800	[thread overview]
Message-ID: <202203230906.D7fHJVsd-lkp@intel.com> (raw)

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

CC: llvm(a)lists.linux.dev
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: "GNU/Weeb Mailing List" <gwml@vger.gnuweeb.org>
CC: linux-kernel(a)vger.kernel.org
TO: Wang Yufen <wangyufen@huawei.com>
CC: Daniel Borkmann <daniel@iogearbox.net>

tree:   https://github.com/ammarfaizi2/linux-block bpf/bpf-next/master
head:   7f0059b58f0257d895fafd2f2e3afe3bbdf21e64
commit: 2486ab434b2c2a14e9237296db00b1e1b7ae3273 [186/270] bpf, sockmap: Fix double uncharge the mem of sk_msg
:::::: branch date: 7 hours ago
:::::: commit date: 7 days ago
config: riscv-randconfig-c006-20220322 (https://download.01.org/0day-ci/archive/20220323/202203230906.D7fHJVsd-lkp(a)intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 902f4708fe1d03b0de7e5315ef875006a6adc319)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://github.com/ammarfaizi2/linux-block/commit/2486ab434b2c2a14e9237296db00b1e1b7ae3273
        git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
        git fetch --no-tags ammarfaizi2-block bpf/bpf-next/master
        git checkout 2486ab434b2c2a14e9237296db00b1e1b7ae3273
        # save the config file to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv clang-analyzer 

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


clang-analyzer warnings: (new ones prefixed by >>)
   include/linux/skbuff.h:2605:1: note: Returning without writing to 'skb->end'
   }
   ^
   net/ipv4/raw.c:376:2: note: Returning from 'skb_reserve'
           skb_reserve(skb, hlen);
           ^~~~~~~~~~~~~~~~~~~~~~
   net/ipv4/raw.c:381:2: note: Calling 'skb_dst_set'
           skb_dst_set(skb, &rt->dst);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/skbuff.h:1131:21: note: 'dst' is non-null
           skb->slow_gro |= !!dst;
                              ^~~
   include/linux/skbuff.h:1133:1: note: Returning without writing to 'skb->end'
   }
   ^
   net/ipv4/raw.c:381:2: note: Returning from 'skb_dst_set'
           skb_dst_set(skb, &rt->dst);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~
   net/ipv4/raw.c:384:2: note: Calling 'skb_reset_network_header'
           skb_reset_network_header(skb);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/skbuff.h:2746:1: note: Returning without writing to 'skb->end'
   }
   ^
   net/ipv4/raw.c:384:2: note: Returning from 'skb_reset_network_header'
           skb_reset_network_header(skb);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   net/ipv4/raw.c:386:2: note: Value assigned to field 'end'
           skb_put(skb, length);
           ^~~~~~~~~~~~~~~~~~~~
   net/ipv4/raw.c:390:2: note: Calling 'skb_setup_tx_timestamp'
           skb_setup_tx_timestamp(skb, sockc->tsflags);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/net/sock.h:2698:39: note: Passing value via 3rd parameter 'tx_flags'
           _sock_tx_timestamp(skb->sk, tsflags, &skb_shinfo(skb)->tx_flags,
                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~
   include/net/sock.h:2698:2: note: Calling '_sock_tx_timestamp'
           _sock_tx_timestamp(skb->sk, tsflags, &skb_shinfo(skb)->tx_flags,
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/net/sock.h:2680:6: note: Assuming 'tsflags' is not equal to 0
           if (unlikely(tsflags)) {
               ^
   include/linux/compiler.h:78:40: note: expanded from macro 'unlikely'
   # define unlikely(x)    __builtin_expect(!!(x), 0)
                                             ^~~~
   include/net/sock.h:2680:2: note: Taking true branch
           if (unlikely(tsflags)) {
           ^
   include/net/sock.h:2682:7: note: Assuming the condition is true
                   if (tsflags & SOF_TIMESTAMPING_OPT_ID && tskey &&
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/net/sock.h:2682:7: note: Left side of '&&' is true
   include/net/sock.h:2682:44: note: Assuming 'tskey' is null
                   if (tsflags & SOF_TIMESTAMPING_OPT_ID && tskey &&
                                                            ^~~~~
   include/net/sock.h:2682:7: note: Assuming pointer value is null
                   if (tsflags & SOF_TIMESTAMPING_OPT_ID && tskey &&
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/net/sock.h:2682:50: note: Left side of '&&' is false
                   if (tsflags & SOF_TIMESTAMPING_OPT_ID && tskey &&
                                                                  ^
   include/net/sock.h:2686:6: note: Assuming the condition is false
           if (unlikely(sock_flag(sk, SOCK_WIFI_STATUS)))
               ^
   include/linux/compiler.h:78:40: note: expanded from macro 'unlikely'
   # define unlikely(x)    __builtin_expect(!!(x), 0)
                                             ^~~~
   include/net/sock.h:2686:2: note: Taking true branch
           if (unlikely(sock_flag(sk, SOCK_WIFI_STATUS)))
           ^
   include/net/sock.h:2687:13: note: Dereference of null pointer (loaded from variable 'tx_flags')
                   *tx_flags |= SKBTX_WIFI_STATUS;
                    ~~~~~~~~ ^
   Suppressed 2 warnings (2 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   2 warnings generated.
   Suppressed 2 warnings (2 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   2 warnings generated.
   Suppressed 2 warnings (2 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   2 warnings generated.
   Suppressed 2 warnings (2 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   2 warnings generated.
   Suppressed 2 warnings (2 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   2 warnings generated.
   Suppressed 2 warnings (2 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   2 warnings generated.
   Suppressed 2 warnings (2 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   2 warnings generated.
   Suppressed 2 warnings (2 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   2 warnings generated.
   Suppressed 2 warnings (2 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   4 warnings generated.
>> net/ipv4/tcp_bpf.c:354:4: warning: Argument to kfree() is the address of the local variable 'tmp', which is not memory allocated by malloc() [clang-analyzer-unix.Malloc]
                           kfree(msg);
                           ^
   net/ipv4/tcp_bpf.c:483:16: note: 'psock' is non-null
           if (unlikely(!psock))
                         ^
   include/linux/compiler.h:78:42: note: expanded from macro 'unlikely'
   # define unlikely(x)    __builtin_expect(!!(x), 0)
                                               ^
   net/ipv4/tcp_bpf.c:483:2: note: Taking false branch
           if (unlikely(!psock))
           ^
   net/ipv4/tcp_bpf.c:487:6: note: Assuming field 'cork' is null
           if (psock->cork) {
               ^~~~~~~~~~~
   net/ipv4/tcp_bpf.c:487:2: note: Taking false branch
           if (psock->cork) {
           ^
   net/ipv4/tcp_bpf.c:495:2: note: Taking false branch
           if (unlikely(sk_msg_full(msg)))
           ^
   net/ipv4/tcp_bpf.c:501:2: note: Taking false branch
           if (sk_msg_full(msg))
           ^
   net/ipv4/tcp_bpf.c:503:6: note: Assuming field 'cork_bytes' is 0
           if (psock->cork_bytes) {
               ^~~~~~~~~~~~~~~~~
   net/ipv4/tcp_bpf.c:503:2: note: Taking false branch
           if (psock->cork_bytes) {
           ^
   net/ipv4/tcp_bpf.c:515:8: note: Calling 'tcp_bpf_send_verdict'
           err = tcp_bpf_send_verdict(sk, psock, msg, &copied, flags);
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   net/ipv4/tcp_bpf.c:287:6: note: Assuming field 'eval' is equal to __SK_NONE
           if (psock->eval == __SK_NONE) {
               ^~~~~~~~~~~~~~~~~~~~~~~~
   net/ipv4/tcp_bpf.c:287:2: note: Taking true branch
           if (psock->eval == __SK_NONE) {
           ^
   net/ipv4/tcp_bpf.c:298:6: note: Assuming field 'cork_bytes' is 0
           if (msg->cork_bytes &&
               ^~~~~~~~~~~~~~~
   net/ipv4/tcp_bpf.c:298:22: note: Left side of '&&' is false
           if (msg->cork_bytes &&
                               ^
   net/ipv4/tcp_bpf.c:312:6: note: Assuming field 'apply_bytes' is not equal to 0
           if (psock->apply_bytes && psock->apply_bytes < tosend)
               ^~~~~~~~~~~~~~~~~~
   net/ipv4/tcp_bpf.c:312:6: note: Left side of '&&' is true
   net/ipv4/tcp_bpf.c:312:28: note: Assuming 'tosend' is <= field 'apply_bytes'
           if (psock->apply_bytes && psock->apply_bytes < tosend)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   net/ipv4/tcp_bpf.c:312:2: note: Taking false branch
           if (psock->apply_bytes && psock->apply_bytes < tosend)
           ^
   net/ipv4/tcp_bpf.c:315:2: note: Control jumps to 'case __SK_REDIRECT:'  at line 324
           switch (psock->eval) {
           ^
   net/ipv4/tcp_bpf.c:327:7: note: Assuming field 'apply_bytes' is not equal to 0
                   if (!psock->apply_bytes) {
                       ^~~~~~~~~~~~~~~~~~~
   net/ipv4/tcp_bpf.c:327:3: note: Taking false branch
                   if (!psock->apply_bytes) {
                   ^
   net/ipv4/tcp_bpf.c:333:7: note: Assuming field 'cork' is non-null
                   if (psock->cork) {
                       ^~~~~~~~~~~
   net/ipv4/tcp_bpf.c:333:3: note: Taking true branch
                   if (psock->cork) {
                   ^
   net/ipv4/tcp_bpf.c:342:7: note: 'eval' is not equal to __SK_REDIRECT
                   if (eval == __SK_REDIRECT)
                       ^~~~
   net/ipv4/tcp_bpf.c:342:3: note: Taking false branch
                   if (eval == __SK_REDIRECT)
                   ^
   net/ipv4/tcp_bpf.c:346:3: note: Taking true branch
                   if (unlikely(ret < 0)) {
                   ^
   net/ipv4/tcp_bpf.c:349:9: note: 'cork' is true
                           if (!cork)
                                ^~~~
   net/ipv4/tcp_bpf.c:349:4: note: Taking false branch
                           if (!cork)
                           ^
   net/ipv4/tcp_bpf.c:352:7: note: 'cork' is true
                   if (cork) {
                       ^~~~
   net/ipv4/tcp_bpf.c:352:3: note: Taking true branch
                   if (cork) {
                   ^
   net/ipv4/tcp_bpf.c:354:4: note: Argument to kfree() is the address of the local variable 'tmp', which is not memory allocated by malloc()
                           kfree(msg);
                           ^     ~~~
   Suppressed 3 warnings (3 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   3 warnings generated.
   drivers/soundwire/bus.c:1235:6: warning: The result of the left shift is undefined due to shifting by '255', which is greater or equal to the width of type 'unsigned long' [clang-analyzer-core.UndefinedBinaryOperatorResult]
           if (BIT(scale_index) != scale || scale_index > 6) {
               ^
   include/vdso/bits.h:7:26: note: expanded from macro 'BIT'

vim +/tmp +354 net/ipv4/tcp_bpf.c

c0fd336ea4ca82 YueHaibing      2020-03-20  276  
604326b41a6fb9 Daniel Borkmann 2018-10-13  277  static int tcp_bpf_send_verdict(struct sock *sk, struct sk_psock *psock,
604326b41a6fb9 Daniel Borkmann 2018-10-13  278  				struct sk_msg *msg, int *copied, int flags)
604326b41a6fb9 Daniel Borkmann 2018-10-13  279  {
031097d9e079e4 Jakub Kicinski  2019-11-27  280  	bool cork = false, enospc = sk_msg_full(msg);
604326b41a6fb9 Daniel Borkmann 2018-10-13  281  	struct sock *sk_redir;
7246d8ed4dcce2 John Fastabend  2018-11-26  282  	u32 tosend, delta = 0;
cd9733f5d75c94 Liu Jian        2021-10-12  283  	u32 eval = __SK_NONE;
604326b41a6fb9 Daniel Borkmann 2018-10-13  284  	int ret;
604326b41a6fb9 Daniel Borkmann 2018-10-13  285  
604326b41a6fb9 Daniel Borkmann 2018-10-13  286  more_data:
7246d8ed4dcce2 John Fastabend  2018-11-26  287  	if (psock->eval == __SK_NONE) {
7246d8ed4dcce2 John Fastabend  2018-11-26  288  		/* Track delta in msg size to add/subtract it on SK_DROP from
7246d8ed4dcce2 John Fastabend  2018-11-26  289  		 * returned to user copied size. This ensures user doesn't
7246d8ed4dcce2 John Fastabend  2018-11-26  290  		 * get a positive return code with msg_cut_data and SK_DROP
7246d8ed4dcce2 John Fastabend  2018-11-26  291  		 * verdict.
7246d8ed4dcce2 John Fastabend  2018-11-26  292  		 */
7246d8ed4dcce2 John Fastabend  2018-11-26  293  		delta = msg->sg.size;
604326b41a6fb9 Daniel Borkmann 2018-10-13  294  		psock->eval = sk_psock_msg_verdict(sk, psock, msg);
7246d8ed4dcce2 John Fastabend  2018-11-26  295  		delta -= msg->sg.size;
7246d8ed4dcce2 John Fastabend  2018-11-26  296  	}
604326b41a6fb9 Daniel Borkmann 2018-10-13  297  
604326b41a6fb9 Daniel Borkmann 2018-10-13  298  	if (msg->cork_bytes &&
604326b41a6fb9 Daniel Borkmann 2018-10-13  299  	    msg->cork_bytes > msg->sg.size && !enospc) {
604326b41a6fb9 Daniel Borkmann 2018-10-13  300  		psock->cork_bytes = msg->cork_bytes - msg->sg.size;
604326b41a6fb9 Daniel Borkmann 2018-10-13  301  		if (!psock->cork) {
604326b41a6fb9 Daniel Borkmann 2018-10-13  302  			psock->cork = kzalloc(sizeof(*psock->cork),
604326b41a6fb9 Daniel Borkmann 2018-10-13  303  					      GFP_ATOMIC | __GFP_NOWARN);
604326b41a6fb9 Daniel Borkmann 2018-10-13  304  			if (!psock->cork)
604326b41a6fb9 Daniel Borkmann 2018-10-13  305  				return -ENOMEM;
604326b41a6fb9 Daniel Borkmann 2018-10-13  306  		}
604326b41a6fb9 Daniel Borkmann 2018-10-13  307  		memcpy(psock->cork, msg, sizeof(*msg));
604326b41a6fb9 Daniel Borkmann 2018-10-13  308  		return 0;
604326b41a6fb9 Daniel Borkmann 2018-10-13  309  	}
604326b41a6fb9 Daniel Borkmann 2018-10-13  310  
604326b41a6fb9 Daniel Borkmann 2018-10-13  311  	tosend = msg->sg.size;
604326b41a6fb9 Daniel Borkmann 2018-10-13  312  	if (psock->apply_bytes && psock->apply_bytes < tosend)
604326b41a6fb9 Daniel Borkmann 2018-10-13  313  		tosend = psock->apply_bytes;
604326b41a6fb9 Daniel Borkmann 2018-10-13  314  
604326b41a6fb9 Daniel Borkmann 2018-10-13  315  	switch (psock->eval) {
604326b41a6fb9 Daniel Borkmann 2018-10-13  316  	case __SK_PASS:
604326b41a6fb9 Daniel Borkmann 2018-10-13  317  		ret = tcp_bpf_push(sk, msg, tosend, flags, true);
604326b41a6fb9 Daniel Borkmann 2018-10-13  318  		if (unlikely(ret)) {
604326b41a6fb9 Daniel Borkmann 2018-10-13  319  			*copied -= sk_msg_free(sk, msg);
604326b41a6fb9 Daniel Borkmann 2018-10-13  320  			break;
604326b41a6fb9 Daniel Borkmann 2018-10-13  321  		}
604326b41a6fb9 Daniel Borkmann 2018-10-13  322  		sk_msg_apply_bytes(psock, tosend);
604326b41a6fb9 Daniel Borkmann 2018-10-13  323  		break;
604326b41a6fb9 Daniel Borkmann 2018-10-13  324  	case __SK_REDIRECT:
604326b41a6fb9 Daniel Borkmann 2018-10-13  325  		sk_redir = psock->sk_redir;
604326b41a6fb9 Daniel Borkmann 2018-10-13  326  		sk_msg_apply_bytes(psock, tosend);
cd9733f5d75c94 Liu Jian        2021-10-12  327  		if (!psock->apply_bytes) {
cd9733f5d75c94 Liu Jian        2021-10-12  328  			/* Clean up before releasing the sock lock. */
cd9733f5d75c94 Liu Jian        2021-10-12  329  			eval = psock->eval;
cd9733f5d75c94 Liu Jian        2021-10-12  330  			psock->eval = __SK_NONE;
cd9733f5d75c94 Liu Jian        2021-10-12  331  			psock->sk_redir = NULL;
cd9733f5d75c94 Liu Jian        2021-10-12  332  		}
604326b41a6fb9 Daniel Borkmann 2018-10-13  333  		if (psock->cork) {
604326b41a6fb9 Daniel Borkmann 2018-10-13  334  			cork = true;
604326b41a6fb9 Daniel Borkmann 2018-10-13  335  			psock->cork = NULL;
604326b41a6fb9 Daniel Borkmann 2018-10-13  336  		}
84472b436e760b Wang Yufen      2022-03-04  337  		sk_msg_return(sk, msg, msg->sg.size);
604326b41a6fb9 Daniel Borkmann 2018-10-13  338  		release_sock(sk);
cd9733f5d75c94 Liu Jian        2021-10-12  339  
604326b41a6fb9 Daniel Borkmann 2018-10-13  340  		ret = tcp_bpf_sendmsg_redir(sk_redir, msg, tosend, flags);
cd9733f5d75c94 Liu Jian        2021-10-12  341  
cd9733f5d75c94 Liu Jian        2021-10-12  342  		if (eval == __SK_REDIRECT)
cd9733f5d75c94 Liu Jian        2021-10-12  343  			sock_put(sk_redir);
cd9733f5d75c94 Liu Jian        2021-10-12  344  
604326b41a6fb9 Daniel Borkmann 2018-10-13  345  		lock_sock(sk);
604326b41a6fb9 Daniel Borkmann 2018-10-13  346  		if (unlikely(ret < 0)) {
604326b41a6fb9 Daniel Borkmann 2018-10-13  347  			int free = sk_msg_free_nocharge(sk, msg);
604326b41a6fb9 Daniel Borkmann 2018-10-13  348  
604326b41a6fb9 Daniel Borkmann 2018-10-13  349  			if (!cork)
604326b41a6fb9 Daniel Borkmann 2018-10-13  350  				*copied -= free;
604326b41a6fb9 Daniel Borkmann 2018-10-13  351  		}
604326b41a6fb9 Daniel Borkmann 2018-10-13  352  		if (cork) {
604326b41a6fb9 Daniel Borkmann 2018-10-13  353  			sk_msg_free(sk, msg);
604326b41a6fb9 Daniel Borkmann 2018-10-13 @354  			kfree(msg);
604326b41a6fb9 Daniel Borkmann 2018-10-13  355  			msg = NULL;
604326b41a6fb9 Daniel Borkmann 2018-10-13  356  			ret = 0;
604326b41a6fb9 Daniel Borkmann 2018-10-13  357  		}
604326b41a6fb9 Daniel Borkmann 2018-10-13  358  		break;
604326b41a6fb9 Daniel Borkmann 2018-10-13  359  	case __SK_DROP:
604326b41a6fb9 Daniel Borkmann 2018-10-13  360  	default:
604326b41a6fb9 Daniel Borkmann 2018-10-13  361  		sk_msg_free_partial(sk, msg, tosend);
604326b41a6fb9 Daniel Borkmann 2018-10-13  362  		sk_msg_apply_bytes(psock, tosend);
7246d8ed4dcce2 John Fastabend  2018-11-26  363  		*copied -= (tosend + delta);
604326b41a6fb9 Daniel Borkmann 2018-10-13  364  		return -EACCES;
604326b41a6fb9 Daniel Borkmann 2018-10-13  365  	}
604326b41a6fb9 Daniel Borkmann 2018-10-13  366  
604326b41a6fb9 Daniel Borkmann 2018-10-13  367  	if (likely(!ret)) {
604326b41a6fb9 Daniel Borkmann 2018-10-13  368  		if (!psock->apply_bytes) {
604326b41a6fb9 Daniel Borkmann 2018-10-13  369  			psock->eval =  __SK_NONE;
604326b41a6fb9 Daniel Borkmann 2018-10-13  370  			if (psock->sk_redir) {
604326b41a6fb9 Daniel Borkmann 2018-10-13  371  				sock_put(psock->sk_redir);
604326b41a6fb9 Daniel Borkmann 2018-10-13  372  				psock->sk_redir = NULL;
604326b41a6fb9 Daniel Borkmann 2018-10-13  373  			}
604326b41a6fb9 Daniel Borkmann 2018-10-13  374  		}
604326b41a6fb9 Daniel Borkmann 2018-10-13  375  		if (msg &&
604326b41a6fb9 Daniel Borkmann 2018-10-13  376  		    msg->sg.data[msg->sg.start].page_link &&
84472b436e760b Wang Yufen      2022-03-04  377  		    msg->sg.data[msg->sg.start].length) {
84472b436e760b Wang Yufen      2022-03-04  378  			if (eval == __SK_REDIRECT)
84472b436e760b Wang Yufen      2022-03-04  379  				sk_mem_charge(sk, msg->sg.size);
604326b41a6fb9 Daniel Borkmann 2018-10-13  380  			goto more_data;
604326b41a6fb9 Daniel Borkmann 2018-10-13  381  		}
84472b436e760b Wang Yufen      2022-03-04  382  	}
604326b41a6fb9 Daniel Borkmann 2018-10-13  383  	return ret;
604326b41a6fb9 Daniel Borkmann 2018-10-13  384  }
604326b41a6fb9 Daniel Borkmann 2018-10-13  385  

:::::: The code at line 354 was first introduced by commit
:::::: 604326b41a6fb9b4a78b6179335decee0365cd8c bpf, sockmap: convert to generic sk_msg interface

:::::: TO: Daniel Borkmann <daniel@iogearbox.net>
:::::: CC: Alexei Starovoitov <ast@kernel.org>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

                 reply	other threads:[~2022-03-23  1:35 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202203230906.D7fHJVsd-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.