From: kernel test robot <lkp@intel.com>
To: oe-kbuild@lists.linux.dev
Cc: lkp@intel.com
Subject: [linux-next:master 10218/10296] vdso_test_getrandom.c:281:40: warning: | has lower precedence than ==; == will be evaluated first
Date: Sun, 8 Sep 2024 06:09:38 +0800 [thread overview]
Message-ID: <202409080600.YI5mIBVR-lkp@intel.com> (raw)
::::::
:::::: Manual check reason: "low confidence bisect report"
::::::
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: Linux Memory Management List <linux-mm@kvack.org>
TO: "Jason A. Donenfeld" <zx2c4@kernel.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 9aaeb87ce1e966169a57f53a02ba05b30880ffb8
commit: 212857cd099510461127f40ae7dc21092d0c0dd1 [10218/10296] selftests: vDSO: ensure vgetrandom works in a time namespace
:::::: branch date: 2 days ago
:::::: commit date: 2 days ago
compiler: clang version 18.1.5 (https://github.com/llvm/llvm-project 617a15a9eac96088ae5e9134248d8236e34b91b1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240908/202409080600.YI5mIBVR-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/r/202409080600.YI5mIBVR-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> vdso_test_getrandom.c:281:40: warning: | has lower precedence than ==; == will be evaluated first [-Wparentheses]
281 | else if (WSTOPSIG(status) == SIGTRAP | 0x80) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
vdso_test_getrandom.c:281:40: note: place parentheses around the '==' expression to silence this warning
281 | else if (WSTOPSIG(status) == SIGTRAP | 0x80) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
vdso_test_getrandom.c:281:40: note: place parentheses around the | expression to evaluate it first
281 | else if (WSTOPSIG(status) == SIGTRAP | 0x80) {
| ~~~~~~~~^~~~~~
1 warning generated.
vim +281 tools/testing/selftests/vDSO/vdso_test_getrandom.c
4920a2590e91bc Jason A. Donenfeld 2024-07-07 241
4920a2590e91bc Jason A. Donenfeld 2024-07-07 242 static void kselftest(void)
4920a2590e91bc Jason A. Donenfeld 2024-07-07 243 {
4920a2590e91bc Jason A. Donenfeld 2024-07-07 244 uint8_t weird_size[1263];
212857cd099510 Jason A. Donenfeld 2024-09-05 245 pid_t child;
4920a2590e91bc Jason A. Donenfeld 2024-07-07 246
4920a2590e91bc Jason A. Donenfeld 2024-07-07 247 ksft_print_header();
212857cd099510 Jason A. Donenfeld 2024-09-05 248 ksft_set_plan(2);
4920a2590e91bc Jason A. Donenfeld 2024-07-07 249
4920a2590e91bc Jason A. Donenfeld 2024-07-07 250 for (size_t i = 0; i < 1000; ++i) {
4920a2590e91bc Jason A. Donenfeld 2024-07-07 251 ssize_t ret = vgetrandom(weird_size, sizeof(weird_size), 0);
4920a2590e91bc Jason A. Donenfeld 2024-07-07 252 if (ret != sizeof(weird_size))
4920a2590e91bc Jason A. Donenfeld 2024-07-07 253 exit(KSFT_FAIL);
4920a2590e91bc Jason A. Donenfeld 2024-07-07 254 }
4920a2590e91bc Jason A. Donenfeld 2024-07-07 255
4920a2590e91bc Jason A. Donenfeld 2024-07-07 256 ksft_test_result_pass("getrandom: PASS\n");
212857cd099510 Jason A. Donenfeld 2024-09-05 257
212857cd099510 Jason A. Donenfeld 2024-09-05 258 assert(unshare(CLONE_NEWUSER | CLONE_NEWTIME) == 0);
212857cd099510 Jason A. Donenfeld 2024-09-05 259 child = fork();
212857cd099510 Jason A. Donenfeld 2024-09-05 260 assert(child >= 0);
212857cd099510 Jason A. Donenfeld 2024-09-05 261 if (!child) {
212857cd099510 Jason A. Donenfeld 2024-09-05 262 vgetrandom_init();
212857cd099510 Jason A. Donenfeld 2024-09-05 263 child = getpid();
212857cd099510 Jason A. Donenfeld 2024-09-05 264 assert(ptrace(PTRACE_TRACEME, 0, NULL, NULL) == 0);
212857cd099510 Jason A. Donenfeld 2024-09-05 265 assert(kill(child, SIGSTOP) == 0);
212857cd099510 Jason A. Donenfeld 2024-09-05 266 assert(vgetrandom(weird_size, sizeof(weird_size), 0) == sizeof(weird_size));
212857cd099510 Jason A. Donenfeld 2024-09-05 267 _exit(0);
212857cd099510 Jason A. Donenfeld 2024-09-05 268 }
212857cd099510 Jason A. Donenfeld 2024-09-05 269 for (;;) {
212857cd099510 Jason A. Donenfeld 2024-09-05 270 struct ptrace_syscall_info info = { 0 };
212857cd099510 Jason A. Donenfeld 2024-09-05 271 int status, ret;
212857cd099510 Jason A. Donenfeld 2024-09-05 272 assert(waitpid(child, &status, 0) >= 0);
212857cd099510 Jason A. Donenfeld 2024-09-05 273 if (WIFEXITED(status)) {
212857cd099510 Jason A. Donenfeld 2024-09-05 274 if (WEXITSTATUS(status) != 0)
212857cd099510 Jason A. Donenfeld 2024-09-05 275 exit(KSFT_FAIL);
212857cd099510 Jason A. Donenfeld 2024-09-05 276 break;
212857cd099510 Jason A. Donenfeld 2024-09-05 277 }
212857cd099510 Jason A. Donenfeld 2024-09-05 278 assert(WIFSTOPPED(status));
212857cd099510 Jason A. Donenfeld 2024-09-05 279 if (WSTOPSIG(status) == SIGSTOP)
212857cd099510 Jason A. Donenfeld 2024-09-05 280 assert(ptrace(PTRACE_SETOPTIONS, child, 0, PTRACE_O_TRACESYSGOOD) == 0);
212857cd099510 Jason A. Donenfeld 2024-09-05 @281 else if (WSTOPSIG(status) == SIGTRAP | 0x80) {
212857cd099510 Jason A. Donenfeld 2024-09-05 282 assert(ptrace(PTRACE_GET_SYSCALL_INFO, child, sizeof(info), &info) > 0);
212857cd099510 Jason A. Donenfeld 2024-09-05 283 if (info.entry.nr == __NR_getrandom &&
212857cd099510 Jason A. Donenfeld 2024-09-05 284 (info.entry.args[0] == (uintptr_t)weird_size && info.entry.args[1] == sizeof(weird_size)))
212857cd099510 Jason A. Donenfeld 2024-09-05 285 exit(KSFT_FAIL);
212857cd099510 Jason A. Donenfeld 2024-09-05 286 }
212857cd099510 Jason A. Donenfeld 2024-09-05 287 assert(ptrace(PTRACE_SYSCALL, child, 0, 0) == 0);
212857cd099510 Jason A. Donenfeld 2024-09-05 288 }
212857cd099510 Jason A. Donenfeld 2024-09-05 289
212857cd099510 Jason A. Donenfeld 2024-09-05 290 ksft_test_result_pass("getrandom timens: PASS\n");
212857cd099510 Jason A. Donenfeld 2024-09-05 291
4920a2590e91bc Jason A. Donenfeld 2024-07-07 292 exit(KSFT_PASS);
4920a2590e91bc Jason A. Donenfeld 2024-07-07 293 }
4920a2590e91bc Jason A. Donenfeld 2024-07-07 294
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next reply other threads:[~2024-09-07 22:10 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-07 22:09 kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2024-09-08 2:20 [linux-next:master 10218/10296] vdso_test_getrandom.c:281:40: warning: | has lower precedence than ==; == will be evaluated first kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202409080600.YI5mIBVR-lkp@intel.com \
--to=lkp@intel.com \
--cc=oe-kbuild@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.