tree:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 9c87c9f41245baa3fc4716cf39141439cf405b01
commit: b142083b585c2c03af24cca4d274f797796a4064 mptcp: MPTCP_KUNIT_TESTS should depend on
MPTCP instead of selecting it
date: 4 weeks ago
config: arc-randconfig-r005-20201117 (attached as .config)
compiler: arceb-elf-gcc (GCC) 9.3.0
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
#
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout b142083b585c2c03af24cca4d274f797796a4064
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/net/ethernet/netronome/nfp/crypto/tls.c: In function
'nfp_net_tls_rx_resync_req':
> drivers/net/ethernet/netronome/nfp/crypto/tls.c:477:18: warning:
variable 'ipv6h' set but not used [-Wunused-but-set-variable]
477 |
struct ipv6hdr *ipv6h;
| ^~~~~
In file included from include/linux/compiler_types.h:65,
from <command-line>:
drivers/net/ethernet/netronome/nfp/crypto/tls.c: In function
'nfp_net_tls_add':
include/linux/compiler_attributes.h:208:41: warning: statement will never be executed
[-Wswitch-unreachable]
208 | # define fallthrough __attribute__((__fallthrough__))
| ^~~~~~~~~~~~~
drivers/net/ethernet/netronome/nfp/crypto/tls.c:299:3: note: in expansion of macro
'fallthrough'
299 | fallthrough;
| ^~~~~~~~~~~
vim +/ipv6h +477 drivers/net/ethernet/netronome/nfp/crypto/tls.c
232eeb1f84eb2d4 Jakub Kicinski 2019-06-05 470
6a35ddc5445a829 Jakub Kicinski 2019-12-17 471 int nfp_net_tls_rx_resync_req(struct
net_device *netdev,
6a35ddc5445a829 Jakub Kicinski 2019-12-17 472 struct nfp_net_tls_resync_req
*req,
6a35ddc5445a829 Jakub Kicinski 2019-12-17 473 void *pkt, unsigned int pkt_len)
6a35ddc5445a829 Jakub Kicinski 2019-12-17 474 {
6a35ddc5445a829 Jakub Kicinski 2019-12-17 475 struct nfp_net *nn =
netdev_priv(netdev);
6a35ddc5445a829 Jakub Kicinski 2019-12-17 476 struct nfp_net_tls_offload_ctx *ntls;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 @477 struct ipv6hdr *ipv6h;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 478 struct tcphdr *th;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 479 struct iphdr *iph;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 480 struct sock *sk;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 481 __be32 tcp_seq;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 482 int err;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 483
6a35ddc5445a829 Jakub Kicinski 2019-12-17 484 iph = pkt + req->l3_offset;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 485 ipv6h = pkt + req->l3_offset;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 486 th = pkt + req->l4_offset;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 487
6a35ddc5445a829 Jakub Kicinski 2019-12-17 488 if ((u8 *)&th[1] > (u8 *)pkt +
pkt_len) {
6a35ddc5445a829 Jakub Kicinski 2019-12-17 489 netdev_warn_once(netdev, "invalid
TLS RX resync request (l3_off: %hhu l4_off: %hhu pkt_len: %u)\n",
6a35ddc5445a829 Jakub Kicinski 2019-12-17 490 req->l3_offset, req->l4_offset,
pkt_len);
6a35ddc5445a829 Jakub Kicinski 2019-12-17 491 err = -EINVAL;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 492 goto err_cnt_ign;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 493 }
6a35ddc5445a829 Jakub Kicinski 2019-12-17 494
6a35ddc5445a829 Jakub Kicinski 2019-12-17 495 switch (iph->version) {
6a35ddc5445a829 Jakub Kicinski 2019-12-17 496 case 4:
6a35ddc5445a829 Jakub Kicinski 2019-12-17 497 sk =
inet_lookup_established(dev_net(netdev), &tcp_hashinfo,
6a35ddc5445a829 Jakub Kicinski 2019-12-17 498 iph->saddr, th->source,
iph->daddr,
6a35ddc5445a829 Jakub Kicinski 2019-12-17 499 th->dest,
netdev->ifindex);
6a35ddc5445a829 Jakub Kicinski 2019-12-17 500 break;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 501 #if IS_ENABLED(CONFIG_IPV6)
6a35ddc5445a829 Jakub Kicinski 2019-12-17 502 case 6:
6a35ddc5445a829 Jakub Kicinski 2019-12-17 503 sk =
__inet6_lookup_established(dev_net(netdev), &tcp_hashinfo,
6a35ddc5445a829 Jakub Kicinski 2019-12-17 504 &ipv6h->saddr,
th->source,
6a35ddc5445a829 Jakub Kicinski 2019-12-17 505 &ipv6h->daddr,
ntohs(th->dest),
6a35ddc5445a829 Jakub Kicinski 2019-12-17 506 netdev->ifindex, 0);
6a35ddc5445a829 Jakub Kicinski 2019-12-17 507 break;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 508 #endif
6a35ddc5445a829 Jakub Kicinski 2019-12-17 509 default:
6a35ddc5445a829 Jakub Kicinski 2019-12-17 510 netdev_warn_once(netdev, "invalid
TLS RX resync request (l3_off: %hhu l4_off: %hhu ipver: %u)\n",
6a35ddc5445a829 Jakub Kicinski 2019-12-17 511 req->l3_offset, req->l4_offset,
iph->version);
6a35ddc5445a829 Jakub Kicinski 2019-12-17 512 err = -EINVAL;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 513 goto err_cnt_ign;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 514 }
6a35ddc5445a829 Jakub Kicinski 2019-12-17 515
6a35ddc5445a829 Jakub Kicinski 2019-12-17 516 err = 0;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 517 if (!sk)
6a35ddc5445a829 Jakub Kicinski 2019-12-17 518 goto err_cnt_ign;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 519 if (!tls_is_sk_rx_device_offloaded(sk)
||
6a35ddc5445a829 Jakub Kicinski 2019-12-17 520 sk->sk_shutdown &
RCV_SHUTDOWN)
6a35ddc5445a829 Jakub Kicinski 2019-12-17 521 goto err_put_sock;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 522
6a35ddc5445a829 Jakub Kicinski 2019-12-17 523 ntls = tls_driver_ctx(sk,
TLS_OFFLOAD_CTX_DIR_RX);
6a35ddc5445a829 Jakub Kicinski 2019-12-17 524 /* some FW versions can't report the
handle and report 0s */
6a35ddc5445a829 Jakub Kicinski 2019-12-17 525 if (memchr_inv(&req->fw_handle, 0,
sizeof(req->fw_handle)) &&
6a35ddc5445a829 Jakub Kicinski 2019-12-17 526 memcmp(&req->fw_handle,
&ntls->fw_handle, sizeof(ntls->fw_handle)))
6a35ddc5445a829 Jakub Kicinski 2019-12-17 527 goto err_put_sock;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 528
6a35ddc5445a829 Jakub Kicinski 2019-12-17 529 /* copy to ensure alignment */
6a35ddc5445a829 Jakub Kicinski 2019-12-17 530 memcpy(&tcp_seq,
&req->tcp_seq, sizeof(tcp_seq));
6a35ddc5445a829 Jakub Kicinski 2019-12-17 531 tls_offload_rx_resync_request(sk,
tcp_seq);
6a35ddc5445a829 Jakub Kicinski 2019-12-17 532
atomic_inc(&nn->ktls_rx_resync_req);
6a35ddc5445a829 Jakub Kicinski 2019-12-17 533
6a35ddc5445a829 Jakub Kicinski 2019-12-17 534 sock_gen_put(sk);
6a35ddc5445a829 Jakub Kicinski 2019-12-17 535 return 0;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 536
6a35ddc5445a829 Jakub Kicinski 2019-12-17 537 err_put_sock:
6a35ddc5445a829 Jakub Kicinski 2019-12-17 538 sock_gen_put(sk);
6a35ddc5445a829 Jakub Kicinski 2019-12-17 539 err_cnt_ign:
6a35ddc5445a829 Jakub Kicinski 2019-12-17 540
atomic_inc(&nn->ktls_rx_resync_ign);
6a35ddc5445a829 Jakub Kicinski 2019-12-17 541 return err;
6a35ddc5445a829 Jakub Kicinski 2019-12-17 542 }
6a35ddc5445a829 Jakub Kicinski 2019-12-17 543
:::::: The code at line 477 was first introduced by commit
:::::: 6a35ddc5445a8291ced6247a67977e110275acde nfp: tls: implement the stream sync RX
resync
:::::: TO: Jakub Kicinski <jakub.kicinski(a)netronome.com>
:::::: CC: David S. Miller <davem(a)davemloft.net>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org