lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 8 Jul 2022 00:21:18 +0800
From:   kernel test robot <lkp@...el.com>
To:     Jakub Kicinski <kuba@...nel.org>, davem@...emloft.net
Cc:     llvm@...ts.linux.dev, kbuild-all@...ts.01.org,
        netdev@...r.kernel.org, edumazet@...gle.com, pabeni@...hat.com,
        borisp@...dia.com, john.fastabend@...il.com, maximmi@...dia.com,
        tariqt@...dia.com, Jakub Kicinski <kuba@...nel.org>
Subject: Re: [PATCH net-next 5/6] tls: create an internal header

Hi Jakub,

I love your patch! Yet something to improve:

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

url:    https://github.com/intel-lab-lkp/linux/commits/Jakub-Kicinski/tls-pad-strparser-internal-header-decrypt_ctx-etc/20220707-120420
base:   https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git cd355d0bc60df51266d228c0f69570cdcfa1e6ba
config: i386-randconfig-a015 (https://download.01.org/0day-ci/archive/20220708/202207080051.XdhPoIde-lkp@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 66ae1d60bb278793fd651cece264699d522bab84)
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://github.com/intel-lab-lkp/linux/commit/4088937ef16f0f7a85bc39bb89ab75b33d5e8774
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Jakub-Kicinski/tls-pad-strparser-internal-header-decrypt_ctx-etc/20220707-120420
        git checkout 4088937ef16f0f7a85bc39bb89ab75b33d5e8774
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/net/ethernet/netronome/nfp/

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@...el.com>

All errors (new ones prefixed by >>):

>> drivers/net/ethernet/netronome/nfp/nfp_net_common.c:636:4: error: call to undeclared function 'tls_offload_tx_resync_request'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
                           tls_offload_tx_resync_request(nskb->sk, seq,
                           ^
   drivers/net/ethernet/netronome/nfp/nfp_net_common.c:636:4: note: did you mean 'tls_offload_rx_resync_request'?
   include/net/tls.h:420:20: note: 'tls_offload_rx_resync_request' declared here
   static inline void tls_offload_rx_resync_request(struct sock *sk, __be32 seq)
                      ^
   1 error generated.


vim +/tls_offload_tx_resync_request +636 drivers/net/ethernet/netronome/nfp/nfp_net_common.c

4c3523623dc0b98 Jakub Kicinski     2015-12-01  585  
62d033309d62653 Jakub Kicinski     2022-03-21  586  struct sk_buff *
51a5e563298db5c Jakub Kicinski     2019-06-05  587  nfp_net_tls_tx(struct nfp_net_dp *dp, struct nfp_net_r_vector *r_vec,
51a5e563298db5c Jakub Kicinski     2019-06-05  588  	       struct sk_buff *skb, u64 *tls_handle, int *nr_frags)
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  589  {
c8d3928ea7e7e53 Jakub Kicinski     2019-07-08  590  #ifdef CONFIG_TLS_DEVICE
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  591  	struct nfp_net_tls_offload_ctx *ntls;
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  592  	struct sk_buff *nskb;
9ed431c1d7cf8c3 Jakub Kicinski     2019-06-10  593  	bool resync_pending;
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  594  	u32 datalen, seq;
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  595  
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  596  	if (likely(!dp->ktls_tx))
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  597  		return skb;
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  598  	if (!skb->sk || !tls_is_sk_tx_device_offloaded(skb->sk))
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  599  		return skb;
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  600  
504148fedb85429 Eric Dumazet       2022-06-30  601  	datalen = skb->len - skb_tcp_all_headers(skb);
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  602  	seq = ntohl(tcp_hdr(skb)->seq);
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  603  	ntls = tls_driver_ctx(skb->sk, TLS_OFFLOAD_CTX_DIR_TX);
9ed431c1d7cf8c3 Jakub Kicinski     2019-06-10  604  	resync_pending = tls_offload_tx_resync_pending(skb->sk);
9ed431c1d7cf8c3 Jakub Kicinski     2019-06-10  605  	if (unlikely(resync_pending || ntls->next_seq != seq)) {
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  606  		/* Pure ACK out of order already */
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  607  		if (!datalen)
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  608  			return skb;
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  609  
51a5e563298db5c Jakub Kicinski     2019-06-05  610  		u64_stats_update_begin(&r_vec->tx_sync);
51a5e563298db5c Jakub Kicinski     2019-06-05  611  		r_vec->tls_tx_fallback++;
51a5e563298db5c Jakub Kicinski     2019-06-05  612  		u64_stats_update_end(&r_vec->tx_sync);
51a5e563298db5c Jakub Kicinski     2019-06-05  613  
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  614  		nskb = tls_encrypt_skb(skb);
51a5e563298db5c Jakub Kicinski     2019-06-05  615  		if (!nskb) {
51a5e563298db5c Jakub Kicinski     2019-06-05  616  			u64_stats_update_begin(&r_vec->tx_sync);
51a5e563298db5c Jakub Kicinski     2019-06-05  617  			r_vec->tls_tx_no_fallback++;
51a5e563298db5c Jakub Kicinski     2019-06-05  618  			u64_stats_update_end(&r_vec->tx_sync);
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  619  			return NULL;
51a5e563298db5c Jakub Kicinski     2019-06-05  620  		}
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  621  		/* encryption wasn't necessary */
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  622  		if (nskb == skb)
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  623  			return skb;
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  624  		/* we don't re-check ring space */
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  625  		if (unlikely(skb_is_nonlinear(nskb))) {
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  626  			nn_dp_warn(dp, "tls_encrypt_skb() produced fragmented frame\n");
51a5e563298db5c Jakub Kicinski     2019-06-05  627  			u64_stats_update_begin(&r_vec->tx_sync);
51a5e563298db5c Jakub Kicinski     2019-06-05  628  			r_vec->tx_errors++;
51a5e563298db5c Jakub Kicinski     2019-06-05  629  			u64_stats_update_end(&r_vec->tx_sync);
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  630  			dev_kfree_skb_any(nskb);
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  631  			return NULL;
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  632  		}
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  633  
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  634  		/* jump forward, a TX may have gotten lost, need to sync TX */
9ed431c1d7cf8c3 Jakub Kicinski     2019-06-10  635  		if (!resync_pending && seq - ntls->next_seq < U32_MAX / 4)
8538d29cea9530f Jakub Kicinski     2019-10-04 @636  			tls_offload_tx_resync_request(nskb->sk, seq,
8538d29cea9530f Jakub Kicinski     2019-10-04  637  						      ntls->next_seq);
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  638  
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  639  		*nr_frags = 0;
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  640  		return nskb;
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  641  	}
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  642  
51a5e563298db5c Jakub Kicinski     2019-06-05  643  	if (datalen) {
51a5e563298db5c Jakub Kicinski     2019-06-05  644  		u64_stats_update_begin(&r_vec->tx_sync);
427545b3046326c Jakub Kicinski     2019-07-08  645  		if (!skb_is_gso(skb))
51a5e563298db5c Jakub Kicinski     2019-06-05  646  			r_vec->hw_tls_tx++;
427545b3046326c Jakub Kicinski     2019-07-08  647  		else
427545b3046326c Jakub Kicinski     2019-07-08  648  			r_vec->hw_tls_tx += skb_shinfo(skb)->gso_segs;
51a5e563298db5c Jakub Kicinski     2019-06-05  649  		u64_stats_update_end(&r_vec->tx_sync);
51a5e563298db5c Jakub Kicinski     2019-06-05  650  	}
51a5e563298db5c Jakub Kicinski     2019-06-05  651  
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  652  	memcpy(tls_handle, ntls->fw_handle, sizeof(ntls->fw_handle));
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  653  	ntls->next_seq += datalen;
c8d3928ea7e7e53 Jakub Kicinski     2019-07-08  654  #endif
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  655  	return skb;
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  656  }
c3991d397f2a4d8 Dirk van der Merwe 2019-06-05  657  

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ