[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202201272328.JtsPKLkq-lkp@intel.com>
Date: Thu, 27 Jan 2022 23:52:55 +0800
From: kernel test robot <lkp@...el.com>
To: "D. Wythe" <alibuda@...ux.alibaba.com>, kgraul@...ux.ibm.com
Cc: llvm@...ts.linux.dev, kbuild-all@...ts.01.org, kuba@...nel.org,
davem@...emloft.net, netdev@...r.kernel.org,
linux-s390@...r.kernel.org, linux-rdma@...r.kernel.org,
"D. Wythe" <alibuda@...ux.alibaba.com>
Subject: Re: [PATCH net-next 2/3] net/smc: Limits backlog connections
Hi Wythe",
Thank you for the patch! Yet something to improve:
[auto build test ERROR on net-next/master]
url: https://github.com/0day-ci/linux/commits/D-Wythe/Optimizing-performance-in-short-lived/20220127-200912
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git fbb8295248e1d6f576d444309fcf79356008eac1
config: mips-buildonly-randconfig-r004-20220124 (https://download.01.org/0day-ci/archive/20220127/202201272328.JtsPKLkq-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project f32dccb9a43b02ce4e540d6ba5dbbdb188f2dc7d)
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
# install mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
# https://github.com/0day-ci/linux/commit/718aff24f3fcc73ecb7bff17fcbe029b799c6624
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review D-Wythe/Optimizing-performance-in-short-lived/20220127-200912
git checkout 718aff24f3fcc73ecb7bff17fcbe029b799c6624
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=mips SHELL=/bin/bash arch/mips/kernel/ net/smc/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
All errors (new ones prefixed by >>):
>> net/smc/af_smc.c:2202:18: error: assigning to 'struct inet_connection_sock_af_ops *' from 'const struct inet_connection_sock_af_ops *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
smc->ori_af_ops = inet_csk(smc->clcsock->sk)->icsk_af_ops;
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
vim +2202 net/smc/af_smc.c
2166
2167 static int smc_listen(struct socket *sock, int backlog)
2168 {
2169 struct sock *sk = sock->sk;
2170 struct smc_sock *smc;
2171 int rc;
2172
2173 smc = smc_sk(sk);
2174 lock_sock(sk);
2175
2176 rc = -EINVAL;
2177 if ((sk->sk_state != SMC_INIT && sk->sk_state != SMC_LISTEN) ||
2178 smc->connect_nonblock)
2179 goto out;
2180
2181 rc = 0;
2182 if (sk->sk_state == SMC_LISTEN) {
2183 sk->sk_max_ack_backlog = backlog;
2184 goto out;
2185 }
2186 /* some socket options are handled in core, so we could not apply
2187 * them to the clc socket -- copy smc socket options to clc socket
2188 */
2189 smc_copy_sock_settings_to_clc(smc);
2190 if (!smc->use_fallback)
2191 tcp_sk(smc->clcsock->sk)->syn_smc = 1;
2192
2193 /* save original sk_data_ready function and establish
2194 * smc-specific sk_data_ready function
2195 */
2196 smc->clcsk_data_ready = smc->clcsock->sk->sk_data_ready;
2197 smc->clcsock->sk->sk_data_ready = smc_clcsock_data_ready;
2198 smc->clcsock->sk->sk_user_data =
2199 (void *)((uintptr_t)smc | SK_USER_DATA_NOCOPY);
2200
2201 /* save origin ops */
> 2202 smc->ori_af_ops = inet_csk(smc->clcsock->sk)->icsk_af_ops;
2203
2204 smc->af_ops = *smc->ori_af_ops;
2205 smc->af_ops.syn_recv_sock = smc_tcp_syn_recv_sock;
2206
2207 inet_csk(smc->clcsock->sk)->icsk_af_ops = &smc->af_ops;
2208
2209 rc = kernel_listen(smc->clcsock, backlog);
2210 if (rc) {
2211 smc->clcsock->sk->sk_data_ready = smc->clcsk_data_ready;
2212 goto out;
2213 }
2214 sk->sk_max_ack_backlog = backlog;
2215 sk->sk_ack_backlog = 0;
2216 sk->sk_state = SMC_LISTEN;
2217
2218 out:
2219 release_sock(sk);
2220 return rc;
2221 }
2222
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Powered by blists - more mailing lists