Re: [kbuild-all] Re: [PATCH 1/3] Add TX sending hardware timestamp.

From: Rong Chen
Date: Tue Dec 15 2020 - 21:03:16 EST




On 12/12/20 4:47 PM, Philip Li wrote:
On Thu, Dec 10, 2020 at 12:41:32PM +0000, Geva, Erez wrote:
On 10/12/2020 04:11, kernel test robot wrote:
Hi Erez,

Thank you for the patch! Yet something to improve:

Thanks for the robot,
as we rarely use clang for kernel. It is very helpful.

[auto build test ERROR on b65054597872ce3aefbc6a666385eabdf9e288da]

url: https://github.com/0day-ci/linux/commits/Erez-Geva/Add-sending-TX-hardware-timestamp-for-TC-ETF-Qdisc/20201210-000521
I can not find this commit

Hi Erez,

The url has been recovered now.

Best Regards,
Rong Chen


base: b65054597872ce3aefbc6a666385eabdf9e288da
config: mips-randconfig-r026-20201209 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 1968804ac726e7674d5de22bc2204b45857da344)
However the clang in
https://download.01.org/0day-ci/cross-package/clang-latest/clang.tar.xz is version 11
Sorry that these are issues at our side, including the branch/commit missing.
The push to download.01.org failed and did not really work, we will look for
recovering them.

reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
Your make cross script tries to download the clang every time.
Please separate the download (which is ~400 MB and 2 GB after open) from the compilation.
Hi Erez, thanks for your feedback, we will improve the reproduction
side per these suggestions.

Please use "wget" follow your own instructions in this email.

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/8a8f634bc74db16dc551cfcf3b63c1183f98eaac
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Erez-Geva/Add-sending-TX-hardware-timestamp-for-TC-ETF-Qdisc/20201210-000521
This branch is absent

git checkout 8a8f634bc74db16dc551cfcf3b63c1183f98eaac
This commit as well

# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=mips

I use Debian 10.7.
I usually compile with GCC. I have not see any errors.

When I use clang 11 from download.01.org I get a crash right away.
Please add a proper instructions how to use clang on Debian or provide
a Docker container with updated clang for testing.

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

All errors (new ones prefixed by >>):

net/core/sock.c:2383:7: error: use of undeclared identifier 'SCM_HW_TXTIME'; did you mean 'SOCK_HW_TXTIME'?
case SCM_HW_TXTIME:
^~~~~~~~~~~~~
SOCK_HW_TXTIME
include/net/sock.h:862:2: note: 'SOCK_HW_TXTIME' declared here
SOCK_HW_TXTIME,
^
1 error generated.

vim +2383 net/core/sock.c

2351
2352 int __sock_cmsg_send(struct sock *sk, struct msghdr *msg, struct cmsghdr *cmsg,
2353 struct sockcm_cookie *sockc)
2354 {
2355 u32 tsflags;
2356
2357 switch (cmsg->cmsg_type) {
2358 case SO_MARK:
2359 if (!ns_capable(sock_net(sk)->user_ns, CAP_NET_ADMIN))
2360 return -EPERM;
2361 if (cmsg->cmsg_len != CMSG_LEN(sizeof(u32)))
2362 return -EINVAL;
2363 sockc->mark = *(u32 *)CMSG_DATA(cmsg);
2364 break;
2365 case SO_TIMESTAMPING_OLD:
2366 if (cmsg->cmsg_len != CMSG_LEN(sizeof(u32)))
2367 return -EINVAL;
2368
2369 tsflags = *(u32 *)CMSG_DATA(cmsg);
2370 if (tsflags & ~SOF_TIMESTAMPING_TX_RECORD_MASK)
2371 return -EINVAL;
2372
2373 sockc->tsflags &= ~SOF_TIMESTAMPING_TX_RECORD_MASK;
2374 sockc->tsflags |= tsflags;
2375 break;
2376 case SCM_TXTIME:
2377 if (!sock_flag(sk, SOCK_TXTIME))
2378 return -EINVAL;
2379 if (cmsg->cmsg_len != CMSG_LEN(sizeof(u64)))
2380 return -EINVAL;
2381 sockc->transmit_time = get_unaligned((u64 *)CMSG_DATA(cmsg));
2382 break;
2383 case SCM_HW_TXTIME:
2384 if (!sock_flag(sk, SOCK_HW_TXTIME))
2385 return -EINVAL;
2386 if (cmsg->cmsg_len != CMSG_LEN(sizeof(u64)))
2387 return -EINVAL;
2388 sockc->transmit_hw_time = get_unaligned((u64 *)CMSG_DATA(cmsg));
2389 break;
2390 /* SCM_RIGHTS and SCM_CREDENTIALS are semantically in SOL_UNIX. */
2391 case SCM_RIGHTS:
2392 case SCM_CREDENTIALS:
2393 break;
2394 default:
2395 return -EINVAL;
2396 }
2397 return 0;
2398 }
2399 EXPORT_SYMBOL(__sock_cmsg_send);
2400

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Please improve the robot, so we can comply and properly support clang compilation.
Got it, we will keep improving the bot.

Thanks
Erez
_______________________________________________
kbuild-all mailing list -- kbuild-all@xxxxxxxxxxxx
To unsubscribe send an email to kbuild-all-leave@xxxxxxxxxxxx
_______________________________________________
kbuild-all mailing list -- kbuild-all@xxxxxxxxxxxx
To unsubscribe send an email to kbuild-all-leave@xxxxxxxxxxxx