[cel:topic-rpc-with-tls-upcall 16/19] net/sunrpc/xprtsock.c:2470: undefined reference to `tls_client_hello_psk'

From: kernel test robot
Date: Sat May 21 2022 - 20:11:36 EST


tree: git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux topic-rpc-with-tls-upcall
head: c484b8917f3569f6fdf4026936f9452dbeb1a8c3
commit: ff786916b6c43d3db9b03c15b3379fd96b4bb05c [16/19] SUNRPC: Add RPC-with-TLS support to xprtsock.c
config: x86_64-rhel-8.3-func (https://download.01.org/0day-ci/archive/20220522/202205220749.t0IB45zc-lkp@xxxxxxxxx/config)
compiler: gcc-11 (Debian 11.3.0-1) 11.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/cel/linux.git/commit/?id=ff786916b6c43d3db9b03c15b3379fd96b4bb05c
git remote add cel git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux
git fetch --no-tags cel topic-rpc-with-tls-upcall
git checkout ff786916b6c43d3db9b03c15b3379fd96b4bb05c
# save the config file
mkdir build_dir && cp config build_dir/.config
make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash

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

All errors (new ones prefixed by >>):

ld: net/sunrpc/xprtsock.o: in function `xs_tls_handshake_sync':
>> net/sunrpc/xprtsock.c:2470: undefined reference to `tls_client_hello_psk'
>> ld: net/sunrpc/xprtsock.c:2464: undefined reference to `tls_client_hello_x509'


vim +2470 net/sunrpc/xprtsock.c

2451
2452 static int xs_tls_handshake_sync(struct rpc_xprt *xprt, unsigned int xprtsec)
2453 {
2454 struct sock_xprt *transport =
2455 container_of(xprt, struct sock_xprt, xprt);
2456 int rc;
2457
2458 init_completion(&transport->handshake_done);
2459 set_bit(XPRT_SOCK_IGNORE_RECV, &transport->sock_state);
2460
2461 transport->xprt_err = -ETIMEDOUT;
2462 switch (xprtsec) {
2463 case RPC_XPRTSEC_TLS_X509:
> 2464 rc = tls_client_hello_x509(transport->sock,
2465 xs_tls_handshake_done, xprt_get(xprt),
2466 TLSH_DEFAULT_PRIORITIES, TLSH_NO_PEERID,
2467 TLSH_NO_CERT);
2468 break;
2469 case RPC_XPRTSEC_TLS_PSK:
> 2470 rc = tls_client_hello_psk(transport->sock, xs_tls_handshake_done,
2471 xprt_get(xprt), TLSH_DEFAULT_PRIORITIES,
2472 TLSH_NO_PEERID);
2473 break;
2474 default:
2475 rc = -EACCES;
2476 }
2477 if (rc)
2478 goto out;
2479
2480 rc = wait_for_completion_interruptible_timeout(&transport->handshake_done,
2481 XS_TLS_HANDSHAKE_TO);
2482 if (rc < 0)
2483 goto out;
2484
2485 rc = transport->xprt_err;
2486
2487 out:
2488 xs_stream_reset_connect(transport);
2489 clear_bit(XPRT_SOCK_IGNORE_RECV, &transport->sock_state);
2490 return rc;
2491 }
2492

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