Hi John,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on security/next-testing]
[also build test ERROR on kselftest/next linus/master v5.13-rc2 next-20210521]
[cannot apply to kees/for-next/pstore]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url:
https://github.com/0day-ci/linux/commits/John-Wood/Fork-brute-force-attac...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security.git
next-testing
config: sh-randconfig-s031-20210522 (attached as .config)
compiler: sh4-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.3-341-g8af24329-dirty
#
https://github.com/0day-ci/linux/commit/7dcc9f3a699718cccd18074ec2ebb56ca...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
John-Wood/Fork-brute-force-attack-mitigation/20210522-203100
git checkout 7dcc9f3a699718cccd18074ec2ebb56ca4b68287
# 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__' W=1 ARCH=sh
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from include/asm-generic/bug.h:5,
from arch/sh/include/asm/bug.h:112,
from include/linux/bug.h:5,
from include/linux/thread_info.h:12,
from include/asm-generic/current.h:5,
from ./arch/sh/include/generated/asm/current.h:1,
from include/linux/sched.h:12,
from include/linux/binfmts.h:5,
from security/brute/brute.c:5:
security/brute/brute.c: In function 'brute_socket_accept':
> include/net/sock.h:383:37: error: 'struct sock_common'
has no member named 'skc_v6_rcv_saddr'; did you mean 'skc_rcv_saddr'?
383 | #define sk_v6_rcv_saddr __sk_common.skc_v6_rcv_saddr
| ^~~~~~~~~~~~~~~~
include/linux/compiler.h:58:52: note: in definition of macro '__trace_if_var'
58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) :
__trace_if_value(cond))
| ^~~~
security/brute/brute.c:511:2: note: in expansion of macro 'if'
511 | if (sk->sk_family == AF_UNIX || sk->sk_family == AF_NETLINK ||
| ^~
security/brute/brute.c:513:27: note: in expansion of macro 'sk_v6_rcv_saddr'
513 | ipv6_addr_equal(&sk->sk_v6_rcv_saddr, &in6addr_loopback))
| ^~~~~~~~~~~~~~~
> include/net/sock.h:383:37: error: 'struct sock_common'
has no member named 'skc_v6_rcv_saddr'; did you mean 'skc_rcv_saddr'?
383 | #define sk_v6_rcv_saddr __sk_common.skc_v6_rcv_saddr
| ^~~~~~~~~~~~~~~~
include/linux/compiler.h:58:61: note: in definition of macro '__trace_if_var'
58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) :
__trace_if_value(cond))
| ^~~~
security/brute/brute.c:511:2: note: in expansion of macro 'if'
511 | if (sk->sk_family == AF_UNIX || sk->sk_family == AF_NETLINK ||
| ^~
security/brute/brute.c:513:27: note: in expansion of macro 'sk_v6_rcv_saddr'
513 | ipv6_addr_equal(&sk->sk_v6_rcv_saddr, &in6addr_loopback))
| ^~~~~~~~~~~~~~~
> include/net/sock.h:383:37: error: 'struct sock_common'
has no member named 'skc_v6_rcv_saddr'; did you mean 'skc_rcv_saddr'?
383 | #define sk_v6_rcv_saddr __sk_common.skc_v6_rcv_saddr
| ^~~~~~~~~~~~~~~~
include/linux/compiler.h:69:3: note: in definition of macro '__trace_if_value'
69 | (cond) ? \
| ^~~~
include/linux/compiler.h:56:28: note: in expansion of macro '__trace_if_var'
56 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
| ^~~~~~~~~~~~~~
security/brute/brute.c:511:2: note: in expansion of macro 'if'
511 | if (sk->sk_family == AF_UNIX || sk->sk_family == AF_NETLINK ||
| ^~
security/brute/brute.c:513:27: note: in expansion of macro 'sk_v6_rcv_saddr'
513 | ipv6_addr_equal(&sk->sk_v6_rcv_saddr, &in6addr_loopback))
| ^~~~~~~~~~~~~~~
In file included from security/brute/brute.c:6:
security/brute/brute.c: At top level:
> include/linux/lsm_hooks.h:1602:32: error: 'struct
security_hook_heads' has no member named 'socket_accept'
1602 | {
.head = &security_hook_heads.HEAD, .hook = { .HEAD = HOOK } }
| ^
security/brute/brute.c:527:2: note: in expansion of macro 'LSM_HOOK_INIT'
527 | LSM_HOOK_INIT(socket_accept, brute_socket_accept),
| ^~~~~~~~~~~~~
> security/brute/brute.c:527:16: error: 'union
security_list_options' has no member named 'socket_accept'
527 |
LSM_HOOK_INIT(socket_accept, brute_socket_accept),
| ^~~~~~~~~~~~~
include/linux/lsm_hooks.h:1602:50: note: in definition of macro
'LSM_HOOK_INIT'
1602 | { .head = &security_hook_heads.HEAD, .hook = { .HEAD = HOOK } }
| ^~~~
> security/brute/brute.c:527:31: error: initialization of 'int
(*)(struct task_struct *)' from incompatible pointer type 'int (*)(struct socket
*, struct socket *)' [-Werror=incompatible-pointer-types]
527 |
LSM_HOOK_INIT(socket_accept, brute_socket_accept),
| ^~~~~~~~~~~~~~~~~~~
include/linux/lsm_hooks.h:1602:57: note: in definition of macro
'LSM_HOOK_INIT'
1602 | { .head = &security_hook_heads.HEAD, .hook = { .HEAD = HOOK } }
| ^~~~
security/brute/brute.c:527:31: note: (near initialization for
'brute_hooks[4].hook.binder_set_context_mgr')
527 | LSM_HOOK_INIT(socket_accept, brute_socket_accept),
| ^~~~~~~~~~~~~~~~~~~
include/linux/lsm_hooks.h:1602:57: note: in definition of macro
'LSM_HOOK_INIT'
1602 | { .head = &security_hook_heads.HEAD, .hook = { .HEAD = HOOK } }
| ^~~~
cc1: some warnings being treated as errors
vim +383 include/net/sock.h
4dc6dc7162c08b Eric Dumazet 2009-07-15 362
68835aba4d9b74 Eric Dumazet 2010-11-30 363 #define
sk_dontcopy_begin __sk_common.skc_dontcopy_begin
68835aba4d9b74 Eric Dumazet 2010-11-30 364 #define
sk_dontcopy_end __sk_common.skc_dontcopy_end
4dc6dc7162c08b Eric Dumazet 2009-07-15 365 #define
sk_hash __sk_common.skc_hash
5080546682bae3 Eric Dumazet 2013-10-02 366 #define
sk_portpair __sk_common.skc_portpair
05dbc7b59481ca Eric Dumazet 2013-10-03 367 #define
sk_num __sk_common.skc_num
05dbc7b59481ca Eric Dumazet 2013-10-03 368 #define
sk_dport __sk_common.skc_dport
5080546682bae3 Eric Dumazet 2013-10-02 369 #define
sk_addrpair __sk_common.skc_addrpair
5080546682bae3 Eric Dumazet 2013-10-02 370 #define
sk_daddr __sk_common.skc_daddr
5080546682bae3 Eric Dumazet 2013-10-02 371 #define
sk_rcv_saddr __sk_common.skc_rcv_saddr
^1da177e4c3f41 Linus Torvalds 2005-04-16 372 #define
sk_family __sk_common.skc_family
^1da177e4c3f41 Linus Torvalds 2005-04-16 373 #define
sk_state __sk_common.skc_state
^1da177e4c3f41 Linus Torvalds 2005-04-16 374 #define
sk_reuse __sk_common.skc_reuse
055dc21a1d1d21 Tom Herbert 2013-01-22 375 #define
sk_reuseport __sk_common.skc_reuseport
9fe516ba3fb29b Eric Dumazet 2014-06-27 376 #define
sk_ipv6only __sk_common.skc_ipv6only
26abe14379f8e2 Eric W. Biederman 2015-05-08 377 #define
sk_net_refcnt __sk_common.skc_net_refcnt
^1da177e4c3f41 Linus Torvalds 2005-04-16 378 #define
sk_bound_dev_if __sk_common.skc_bound_dev_if
^1da177e4c3f41 Linus Torvalds 2005-04-16 379 #define
sk_bind_node __sk_common.skc_bind_node
8feaf0c0a5488b Arnaldo Carvalho de Melo 2005-08-09 380 #define
sk_prot __sk_common.skc_prot
07feaebfcc10cd Eric W. Biederman 2007-09-12 381 #define
sk_net __sk_common.skc_net
efe4208f47f907 Eric Dumazet 2013-10-03 382 #define
sk_v6_daddr __sk_common.skc_v6_daddr
efe4208f47f907 Eric Dumazet 2013-10-03 @383 #define
sk_v6_rcv_saddr __sk_common.skc_v6_rcv_saddr
33cf7c90fe2f97 Eric Dumazet 2015-03-11 384 #define
sk_cookie __sk_common.skc_cookie
70da268b569d32 Eric Dumazet 2015-10-08 385 #define
sk_incoming_cpu __sk_common.skc_incoming_cpu
8e5eb54d303b7c Eric Dumazet 2015-10-08 386 #define
sk_flags __sk_common.skc_flags
ed53d0ab761f5c Eric Dumazet 2015-10-08 387 #define
sk_rxhash __sk_common.skc_rxhash
efe4208f47f907 Eric Dumazet 2013-10-03 388
^1da177e4c3f41 Linus Torvalds 2005-04-16 389 socket_lock_t sk_lock;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 390 atomic_t sk_drops;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 391 int sk_rcvlowat;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 392 struct
sk_buff_head sk_error_queue;
8b27dae5a2e89a Eric Dumazet 2019-03-22 393 struct
sk_buff *sk_rx_skb_cache;
b178bb3dfc30d9 Eric Dumazet 2010-11-16 394 struct
sk_buff_head sk_receive_queue;
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 395 /*
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 396 * The backlog queue is special,
it is always used with
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 397 * the per-socket spinlock held
and requires low latency
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 398 * access. Therefore we special
case it's implementation.
b178bb3dfc30d9 Eric Dumazet 2010-11-16 399 * Note : rmem_alloc is in this
structure to fill a hole
b178bb3dfc30d9 Eric Dumazet 2010-11-16 400 * on 64bit arches, not because
its logically part of
b178bb3dfc30d9 Eric Dumazet 2010-11-16 401 * backlog.
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 402 */
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 403 struct {
b178bb3dfc30d9 Eric Dumazet 2010-11-16 404 atomic_t rmem_alloc;
b178bb3dfc30d9 Eric Dumazet 2010-11-16 405 int len;
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 406 struct sk_buff *head;
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 407 struct sk_buff *tail;
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 408 } sk_backlog;
b178bb3dfc30d9 Eric Dumazet 2010-11-16 409 #define sk_rmem_alloc
sk_backlog.rmem_alloc
2c8c56e15df3d4 Eric Dumazet 2014-11-11 410
9115e8cd2a0c6e Eric Dumazet 2016-12-03 411 int sk_forward_alloc;
e0d1095ae34054 Cong Wang 2013-08-01 412 #ifdef CONFIG_NET_RX_BUSY_POLL
dafcc4380deec2 Eliezer Tamir 2013-06-14 413 unsigned int sk_ll_usec;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 414 /* ===== mostly read cache line
===== */
9115e8cd2a0c6e Eric Dumazet 2016-12-03 415 unsigned int sk_napi_id;
b178bb3dfc30d9 Eric Dumazet 2010-11-16 416 #endif
b178bb3dfc30d9 Eric Dumazet 2010-11-16 417 int sk_rcvbuf;
b178bb3dfc30d9 Eric Dumazet 2010-11-16 418
b178bb3dfc30d9 Eric Dumazet 2010-11-16 419 struct sk_filter
__rcu *sk_filter;
ceb5d58b217098 Eric Dumazet 2015-11-29 420 union {
eaefd1105bc431 Eric Dumazet 2011-02-18 421 struct socket_wq __rcu *sk_wq;
66256e0b15bd72 Randy Dunlap 2020-02-15 422 /* private: */
ceb5d58b217098 Eric Dumazet 2015-11-29 423 struct socket_wq *sk_wq_raw;
66256e0b15bd72 Randy Dunlap 2020-02-15 424 /* public: */
ceb5d58b217098 Eric Dumazet 2015-11-29 425 };
def8b4faff5ca3 Alexey Dobriyan 2008-10-28 426 #ifdef CONFIG_XFRM
d188ba86dd07a7 Eric Dumazet 2015-12-08 427 struct xfrm_policy __rcu
*sk_policy[2];
def8b4faff5ca3 Alexey Dobriyan 2008-10-28 428 #endif
deaa58542b21d2 Eric Dumazet 2012-06-24 429 struct dst_entry *sk_rx_dst;
0e36cbb344575e Cong Wang 2013-01-22 430 struct dst_entry
__rcu *sk_dst_cache;
^1da177e4c3f41 Linus Torvalds 2005-04-16 431 atomic_t sk_omem_alloc;
4e07a91c37c69e Arnaldo Carvalho de Melo 2007-05-29 432 int sk_sndbuf;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 433
9115e8cd2a0c6e Eric Dumazet 2016-12-03 434 /* ===== cache line for TX =====
*/
9115e8cd2a0c6e Eric Dumazet 2016-12-03 435 int sk_wmem_queued;
14afee4b6092fd Reshetova, Elena 2017-06-30 436 refcount_t sk_wmem_alloc;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 437 unsigned long sk_tsq_flags;
75c119afe14f74 Eric Dumazet 2017-10-05 438 union {
9115e8cd2a0c6e Eric Dumazet 2016-12-03 439 struct sk_buff *sk_send_head;
75c119afe14f74 Eric Dumazet 2017-10-05 440 struct rb_root tcp_rtx_queue;
75c119afe14f74 Eric Dumazet 2017-10-05 441 };
472c2e07eef045 Eric Dumazet 2019-03-22 442 struct
sk_buff *sk_tx_skb_cache;
^1da177e4c3f41 Linus Torvalds 2005-04-16 443 struct
sk_buff_head sk_write_queue;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 444 __s32 sk_peek_off;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 445 int sk_write_pending;
9b8805a325591c Julian Anastasov 2017-02-06 446 __u32 sk_dst_pending_confirm;
218af599fa635b Eric Dumazet 2017-05-16 447 u32 sk_pacing_status; /* see
enum sk_pacing */
9115e8cd2a0c6e Eric Dumazet 2016-12-03 448 long sk_sndtimeo;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 449 struct timer_list sk_timer;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 450 __u32 sk_priority;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 451 __u32 sk_mark;
76a9ebe811fb3d Eric Dumazet 2018-10-15 452 unsigned long sk_pacing_rate;
/* bytes per second */
76a9ebe811fb3d Eric Dumazet 2018-10-15 453 unsigned
long sk_max_pacing_rate;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 454 struct page_frag sk_frag;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 455
netdev_features_t sk_route_caps;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 456
netdev_features_t sk_route_nocaps;
0a6b2a1dc2a210 Eric Dumazet 2018-02-19 457
netdev_features_t sk_route_forced_caps;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 458 int sk_gso_type;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 459 unsigned int sk_gso_max_size;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 460 gfp_t sk_allocation;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 461 __u32 sk_txhash;
fc64869c48494a Andrey Ryabinin 2016-05-18 462
fc64869c48494a Andrey Ryabinin 2016-05-18 463 /*
fc64869c48494a Andrey Ryabinin 2016-05-18 464 * Because of non atomicity
rules, all
fc64869c48494a Andrey Ryabinin 2016-05-18 465 * changes are protected by
socket lock.
fc64869c48494a Andrey Ryabinin 2016-05-18 466 */
bf9765145b856f Mat Martineau 2020-01-09 467 u8 sk_padding : 1,
cdfbabfb2f0ce9 David Howells 2017-03-09 468 sk_kern_sock : 1,
28448b80456fea Tom Herbert 2014-05-23 469 sk_no_check_tx : 1,
28448b80456fea Tom Herbert 2014-05-23 470 sk_no_check_rx : 1,
bf9765145b856f Mat Martineau 2020-01-09 471 sk_userlocks : 4;
3a9b76fd0db9f0 Eric Dumazet 2017-11-11 472 u8 sk_pacing_shift;
bf9765145b856f Mat Martineau 2020-01-09 473 u16 sk_type;
bf9765145b856f Mat Martineau 2020-01-09 474 u16 sk_protocol;
bf9765145b856f Mat Martineau 2020-01-09 475 u16 sk_gso_max_segs;
^1da177e4c3f41 Linus Torvalds 2005-04-16 476 unsigned long
sk_lingertime;
476e19cfa131e2 Arnaldo Carvalho de Melo 2005-05-05 477 struct proto *sk_prot_creator;
^1da177e4c3f41 Linus Torvalds 2005-04-16 478 rwlock_t sk_callback_lock;
^1da177e4c3f41 Linus Torvalds 2005-04-16 479 int sk_err,
^1da177e4c3f41 Linus Torvalds 2005-04-16 480 sk_err_soft;
becb74f0acca19 Eric Dumazet 2015-03-19 481 u32 sk_ack_backlog;
becb74f0acca19 Eric Dumazet 2015-03-19 482 u32 sk_max_ack_backlog;
86741ec25462e4 Lorenzo Colitti 2016-11-04 483 kuid_t sk_uid;
7fd3253a7de6a3 Björn Töpel 2020-11-30 484 #ifdef CONFIG_NET_RX_BUSY_POLL
7fd3253a7de6a3 Björn Töpel 2020-11-30 485 u8 sk_prefer_busy_poll;
7c951cafc0cb2e Björn Töpel 2020-11-30 486 u16 sk_busy_poll_budget;
7fd3253a7de6a3 Björn Töpel 2020-11-30 487 #endif
109f6e39fa07c4 Eric W. Biederman 2010-06-13 488 struct pid *sk_peer_pid;
109f6e39fa07c4 Eric W. Biederman 2010-06-13 489 const struct
cred *sk_peer_cred;
^1da177e4c3f41 Linus Torvalds 2005-04-16 490 long sk_rcvtimeo;
b7aa0bf70c4afb Eric Dumazet 2007-04-19 491 ktime_t sk_stamp;
3a0ed3e9619738 Deepa Dinamani 2018-12-27 492 #if BITS_PER_LONG==32
3a0ed3e9619738 Deepa Dinamani 2018-12-27 493 seqlock_t sk_stamp_seq;
3a0ed3e9619738 Deepa Dinamani 2018-12-27 494 #endif
b9f40e21ef4298 Willem de Bruijn 2014-08-04 495 u16 sk_tsflags;
fc64869c48494a Andrey Ryabinin 2016-05-18 496 u8 sk_shutdown;
09c2d251b70723 Willem de Bruijn 2014-08-04 497 u32 sk_tskey;
52267790ef52d7 Willem de Bruijn 2017-08-03 498 atomic_t sk_zckey;
80b14dee2bea12 Richard Cochran 2018-07-03 499
80b14dee2bea12 Richard Cochran 2018-07-03 500 u8 sk_clockid;
80b14dee2bea12 Richard Cochran 2018-07-03 501 u8 sk_txtime_deadline_mode :
1,
4b15c707535266 Jesus Sanchez-Palencia 2018-07-03 502 sk_txtime_report_errors : 1,
4b15c707535266 Jesus Sanchez-Palencia 2018-07-03 503 sk_txtime_unused : 6;
80b14dee2bea12 Richard Cochran 2018-07-03 504
^1da177e4c3f41 Linus Torvalds 2005-04-16 505 struct socket *sk_socket;
^1da177e4c3f41 Linus Torvalds 2005-04-16 506 void *sk_user_data;
d5f642384e9da7 Alexey Dobriyan 2008-11-04 507 #ifdef CONFIG_SECURITY
^1da177e4c3f41 Linus Torvalds 2005-04-16 508 void *sk_security;
d5f642384e9da7 Alexey Dobriyan 2008-11-04 509 #endif
2a56a1fec290bf Tejun Heo 2015-12-07 510 struct
sock_cgroup_data sk_cgrp_data;
baac50bbc3cdfd Johannes Weiner 2016-01-14 511 struct mem_cgroup *sk_memcg;
^1da177e4c3f41 Linus Torvalds 2005-04-16 512 void (*sk_state_change)(struct
sock *sk);
676d23690fb62b David S. Miller 2014-04-11 513 void (*sk_data_ready)(struct
sock *sk);
^1da177e4c3f41 Linus Torvalds 2005-04-16 514 void (*sk_write_space)(struct
sock *sk);
^1da177e4c3f41 Linus Torvalds 2005-04-16 515 void (*sk_error_report)(struct
sock *sk);
^1da177e4c3f41 Linus Torvalds 2005-04-16 516 int (*sk_backlog_rcv)(struct
sock *sk,
^1da177e4c3f41 Linus Torvalds 2005-04-16 517 struct sk_buff *skb);
ebf4e808fa0b22 Ilya Lesokhin 2018-04-30 518 #ifdef CONFIG_SOCK_VALIDATE_XMIT
ebf4e808fa0b22 Ilya Lesokhin 2018-04-30 519 struct
sk_buff* (*sk_validate_xmit_skb)(struct sock *sk,
ebf4e808fa0b22 Ilya Lesokhin 2018-04-30 520 struct net_device *dev,
ebf4e808fa0b22 Ilya Lesokhin 2018-04-30 521 struct sk_buff *skb);
ebf4e808fa0b22 Ilya Lesokhin 2018-04-30 522 #endif
^1da177e4c3f41 Linus Torvalds 2005-04-16 523 void
(*sk_destruct)(struct sock *sk);
ef456144da8ef5 Craig Gallek 2016-01-04 524 struct sock_reuseport
__rcu *sk_reuseport_cb;
6ac99e8f23d4b1 Martin KaFai Lau 2019-04-26 525 #ifdef CONFIG_BPF_SYSCALL
1f00d375af84fb KP Singh 2020-08-25 526 struct bpf_local_storage
__rcu *sk_bpf_storage;
6ac99e8f23d4b1 Martin KaFai Lau 2019-04-26 527 #endif
a4298e4522d687 Eric Dumazet 2016-04-01 528 struct rcu_head sk_rcu;
^1da177e4c3f41 Linus Torvalds 2005-04-16 529 };
^1da177e4c3f41 Linus Torvalds 2005-04-16 530
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org