From: kbuild test robot <lkp@intel.com>
To: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: kbuild-all@01.org, netdev@vger.kernel.org,
Ard Biesheuvel <ard.biesheuvel@linaro.org>,
Eric Biggers <ebiggers@kernel.org>,
linux-crypto@vger.kernel.org, herbert@gondor.apana.org.au,
edumazet@google.com, davem@davemloft.net, kuznet@ms2.inr.ac.ru,
yoshfuji@linux-ipv6.org, jbaron@akamai.com, cpaasch@apple.com,
David.Laight@aculab.com, ycheng@google.com
Subject: Re: [PATCH net-next v2 1/1] net: fastopen: robustness and endianness fixes for SipHash
Date: Fri, 21 Jun 2019 07:03:38 +0800 [thread overview]
Message-ID: <201906210722.4v8arL9y%lkp@intel.com> (raw)
In-Reply-To: <20190619065510.23514-2-ard.biesheuvel@linaro.org>
[-- Attachment #1: Type: text/plain, Size: 8526 bytes --]
Hi Ard,
I love your patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
url: https://github.com/0day-ci/linux/commits/Ard-Biesheuvel/net-fastopen-follow-up-tweaks-for-SipHash-switch/20190621-060434
config: i386-randconfig-x009-201924 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
net//ipv4/tcp_fastopen.c: In function 'tcp_fastopen_reset_cipher':
>> net//ipv4/tcp_fastopen.c:82:16: warning: missing braces around initializer [-Wmissing-braces]
ctx->key[0] = (siphash_key_t){
^
get_unaligned_le64(primary_key),
{
net//ipv4/tcp_fastopen.c:85:2:
};
}
net//ipv4/tcp_fastopen.c:87:17: warning: missing braces around initializer [-Wmissing-braces]
ctx->key[1] = (siphash_key_t){
^
get_unaligned_le64(backup_key),
{
net//ipv4/tcp_fastopen.c:90:3:
};
}
Cyclomatic Complexity 5 include/linux/compiler.h:__read_once_size
Cyclomatic Complexity 5 include/linux/compiler.h:__write_once_size
Cyclomatic Complexity 1 include/linux/kasan-checks.h:kasan_check_read
Cyclomatic Complexity 1 include/linux/kasan-checks.h:kasan_check_write
Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_read
Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_set
Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_add
Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_inc
Cyclomatic Complexity 2 arch/x86/include/asm/atomic.h:arch_atomic_try_cmpxchg
Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_read
Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_set
Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_add
Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_inc
Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_try_cmpxchg
Cyclomatic Complexity 1 arch/x86/include/asm/bitops.h:fls
Cyclomatic Complexity 1 include/uapi/linux/byteorder/little_endian.h:__le64_to_cpup
Cyclomatic Complexity 1 include/uapi/linux/byteorder/little_endian.h:__le32_to_cpup
Cyclomatic Complexity 1 include/linux/log2.h:__ilog2_u32
Cyclomatic Complexity 1 include/linux/percpu-defs.h:__this_cpu_preempt_check
Cyclomatic Complexity 5 include/linux/string.h:memcmp
Cyclomatic Complexity 1 include/asm-generic/getorder.h:__get_order
Cyclomatic Complexity 6 arch/x86/include/asm/preempt.h:__preempt_count_add
Cyclomatic Complexity 6 arch/x86/include/asm/preempt.h:__preempt_count_sub
Cyclomatic Complexity 1 include/linux/spinlock.h:spin_lock
Cyclomatic Complexity 1 include/linux/spinlock.h:spin_unlock
Cyclomatic Complexity 1 include/linux/rcupdate.h:__rcu_read_lock
Cyclomatic Complexity 1 include/linux/rcupdate.h:__rcu_read_unlock
Cyclomatic Complexity 1 include/linux/rcutiny.h:rcu_is_watching
Cyclomatic Complexity 67 include/linux/slab.h:kmalloc_large
Cyclomatic Complexity 3 include/linux/slab.h:kmalloc
Cyclomatic Complexity 1 include/linux/slab.h:kzalloc
Cyclomatic Complexity 1 include/linux/refcount.h:refcount_set
Cyclomatic Complexity 1 include/linux/refcount.h:refcount_read
Cyclomatic Complexity 1 include/linux/skbuff.h:skb_end_pointer
Cyclomatic Complexity 1 include/linux/skbuff.h:__skb_insert
Cyclomatic Complexity 1 include/linux/skbuff.h:__skb_queue_before
Cyclomatic Complexity 1 include/linux/skbuff.h:__skb_queue_tail
Cyclomatic Complexity 1 include/linux/skbuff.h:skb_transport_header
Cyclomatic Complexity 1 include/linux/skbuff.h:skb_network_header
Cyclomatic Complexity 1 include/net/net_namespace.h:read_pnet
Cyclomatic Complexity 1 include/linux/unaligned/access_ok.h:get_unaligned_le64
Cyclomatic Complexity 1 include/net/dst.h:dst_metric_raw
Cyclomatic Complexity 1 include/net/sock.h:sk_has_account
Cyclomatic Complexity 2 include/net/sock.h:sk_mem_charge
Cyclomatic Complexity 1 include/net/sock.h:sock_net
Cyclomatic Complexity 1 include/net/inet_sock.h:inet_sk
Cyclomatic Complexity 1 include/net/inet_connection_sock.h:inet_csk
Cyclomatic Complexity 1 include/linux/tcp.h:tcp_hdr
Cyclomatic Complexity 1 include/linux/tcp.h:__tcp_hdrlen
Cyclomatic Complexity 1 include/linux/tcp.h:tcp_hdrlen
Cyclomatic Complexity 1 include/linux/tcp.h:tcp_rsk
Cyclomatic Complexity 1 include/linux/tcp.h:tcp_sk
Cyclomatic Complexity 1 include/linux/ipv6.h:ipv6_hdr
Cyclomatic Complexity 1 include/linux/ip.h:ip_hdr
Cyclomatic Complexity 4 include/net/tcp.h:tcp_fastopen_cookie_match
Cyclomatic Complexity 1 include/net/tcp.h:tcp_fastopen_context_len
Cyclomatic Complexity 3 include/net/tcp.h:tcp_segs_in
Cyclomatic Complexity 8 include/net/tcp.h:tcp_fastopen_get_ctx
Cyclomatic Complexity 1 include/linux/rcupdate.h:rcu_lock_acquire
Cyclomatic Complexity 4 include/linux/rcupdate.h:rcu_read_lock
Cyclomatic Complexity 1 include/linux/rcupdate.h:rcu_lock_release
Cyclomatic Complexity 4 include/linux/rcupdate.h:rcu_read_unlock
Cyclomatic Complexity 1 net//ipv4/tcp_fastopen.c:tcp_fastopen_ctx_free
Cyclomatic Complexity 1 include/linux/lockdep.h:lock_is_held
Cyclomatic Complexity 3 include/net/sock.h:lockdep_sock_is_held
Cyclomatic Complexity 5 include/net/sock.h:__sk_dst_get
Cyclomatic Complexity 2 include/net/dst.h:refdst_drop
Cyclomatic Complexity 2 include/net/dst.h:skb_dst_drop
Cyclomatic Complexity 5 include/net/dst.h:dst_metric
Cyclomatic Complexity 5 net//ipv4/tcp_fastopen.c:tcp_fastopen_no_cookie
Cyclomatic Complexity 3 include/linux/atomic-fallback.h:atomic_fetch_add_unless
Cyclomatic Complexity 1 include/linux/atomic-fallback.h:atomic_add_unless
Cyclomatic Complexity 1 include/linux/atomic-fallback.h:atomic_inc_not_zero
Cyclomatic Complexity 6 include/net/sock.h:sk_dst_get
Cyclomatic Complexity 1 include/linux/skbuff.h:__skb_pull
Cyclomatic Complexity 2 include/linux/skbuff.h:skb_orphan
Cyclomatic Complexity 1 include/net/sock.h:skb_set_owner_r
Cyclomatic Complexity 2 include/net/sock.h:sock_put
Cyclomatic Complexity 2 include/net/request_sock.h:__reqsk_free
Cyclomatic Complexity 2 include/net/request_sock.h:reqsk_free
Cyclomatic Complexity 2 include/net/request_sock.h:reqsk_put
Cyclomatic Complexity 7 net//ipv4/tcp_fastopen.c:tcp_fastopen_queue_check
Cyclomatic Complexity 11 include/linux/siphash.h:___siphash_aligned
Cyclomatic Complexity 1 include/linux/siphash.h:siphash
Cyclomatic Complexity 3 net//ipv4/tcp_fastopen.c:__tcp_fastopen_cookie_gen_cipher
vim +82 net//ipv4/tcp_fastopen.c
68
69 int tcp_fastopen_reset_cipher(struct net *net, struct sock *sk,
70 void *primary_key, void *backup_key)
71 {
72 struct tcp_fastopen_context *ctx, *octx;
73 struct fastopen_queue *q;
74 int err = 0;
75
76 ctx = kmalloc(sizeof(*ctx), GFP_KERNEL);
77 if (!ctx) {
78 err = -ENOMEM;
79 goto out;
80 }
81
> 82 ctx->key[0] = (siphash_key_t){
83 get_unaligned_le64(primary_key),
84 get_unaligned_le64(primary_key + 8)
85 };
86 if (backup_key) {
87 ctx->key[1] = (siphash_key_t){
88 get_unaligned_le64(backup_key),
89 get_unaligned_le64(backup_key + 8)
90 };
91 ctx->num = 2;
92 } else {
93 ctx->num = 1;
94 }
95
96 spin_lock(&net->ipv4.tcp_fastopen_ctx_lock);
97 if (sk) {
98 q = &inet_csk(sk)->icsk_accept_queue.fastopenq;
99 octx = rcu_dereference_protected(q->ctx,
100 lockdep_is_held(&net->ipv4.tcp_fastopen_ctx_lock));
101 rcu_assign_pointer(q->ctx, ctx);
102 } else {
103 octx = rcu_dereference_protected(net->ipv4.tcp_fastopen_ctx,
104 lockdep_is_held(&net->ipv4.tcp_fastopen_ctx_lock));
105 rcu_assign_pointer(net->ipv4.tcp_fastopen_ctx, ctx);
106 }
107 spin_unlock(&net->ipv4.tcp_fastopen_ctx_lock);
108
109 if (octx)
110 call_rcu(&octx->rcu, tcp_fastopen_ctx_free);
111 out:
112 return err;
113 }
114
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 29016 bytes --]
prev parent reply other threads:[~2019-06-20 23:03 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-19 6:55 [PATCH net-next v2 0/1] net: fastopen: follow-up tweaks for SipHash switch Ard Biesheuvel
2019-06-19 6:55 ` [PATCH net-next v2 1/1] net: fastopen: robustness and endianness fixes for SipHash Ard Biesheuvel
2019-06-19 17:25 ` Eric Biggers
2019-06-19 21:42 ` David Miller
2019-06-19 21:47 ` Ard Biesheuvel
2019-06-20 23:03 ` kbuild test robot [this message]
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=201906210722.4v8arL9y%lkp@intel.com \
--to=lkp@intel.com \
--cc=David.Laight@aculab.com \
--cc=ard.biesheuvel@linaro.org \
--cc=cpaasch@apple.com \
--cc=davem@davemloft.net \
--cc=ebiggers@kernel.org \
--cc=edumazet@google.com \
--cc=herbert@gondor.apana.org.au \
--cc=jbaron@akamai.com \
--cc=kbuild-all@01.org \
--cc=kuznet@ms2.inr.ac.ru \
--cc=linux-crypto@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=ycheng@google.com \
--cc=yoshfuji@linux-ipv6.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox