* [mark-rutland:atomics/arch-atomic 24/25] include/linux/atomic-arch-fallback.h:340:2: error: implicit declaration of function 'arch_atomic_add'; did you mean 'arch_atomic_and'?
@ 2021-04-27 21:28 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-04-27 21:28 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 18395 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git atomics/arch-atomic
head: a01b575b1e6ed7458c510cc9f67ca8f48dadb1e4
commit: 3b8d11585ddd4748b27ac15ca1fcf1f08e812ffe [24/25] locking/atomic: openrisc: move to the arch_atomic API
config: openrisc-randconfig-r003-20210426 (attached as .config)
compiler: or1k-linux-gcc (GCC) 9.3.0
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://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git/commit/?id=3b8d11585ddd4748b27ac15ca1fcf1f08e812ffe
git remote add mark-rutland https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git
git fetch --no-tags mark-rutland atomics/arch-atomic
git checkout 3b8d11585ddd4748b27ac15ca1fcf1f08e812ffe
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=openrisc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
In file included from include/linux/atomic.h:81,
from include/asm-generic/bitops/lock.h:5,
from arch/openrisc/include/asm/bitops.h:42,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from include/asm-generic/bug.h:20,
from ./arch/openrisc/include/generated/asm/bug.h:1,
from include/linux/bug.h:5,
from include/linux/page-flags.h:10,
from kernel/bounds.c:10:
include/linux/atomic-arch-fallback.h: In function 'arch_atomic_inc':
>> include/linux/atomic-arch-fallback.h:340:2: error: implicit declaration of function 'arch_atomic_add'; did you mean 'arch_atomic_and'? [-Werror=implicit-function-declaration]
340 | arch_atomic_add(1, v);
| ^~~~~~~~~~~~~~~
| arch_atomic_and
include/linux/atomic-arch-fallback.h: In function 'arch_atomic_dec':
>> include/linux/atomic-arch-fallback.h:511:2: error: implicit declaration of function 'arch_atomic_sub'; did you mean 'arch_atomic_set'? [-Werror=implicit-function-declaration]
511 | arch_atomic_sub(1, v);
| ^~~~~~~~~~~~~~~
| arch_atomic_set
cc1: some warnings being treated as errors
--
WARNING: unmet direct dependencies detected for LOCKDEP
Depends on DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT && (FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE || ARM || ARC || X86)
Selected by
- PROVE_LOCKING && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
- LOCK_STAT && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
- DEBUG_LOCK_ALLOC && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
In file included from include/linux/atomic.h:81,
from include/asm-generic/bitops/lock.h:5,
from arch/openrisc/include/asm/bitops.h:42,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from include/asm-generic/bug.h:20,
from ./arch/openrisc/include/generated/asm/bug.h:1,
from include/linux/bug.h:5,
from include/linux/page-flags.h:10,
from kernel/bounds.c:10:
include/linux/atomic-arch-fallback.h: In function 'arch_atomic_inc':
>> include/linux/atomic-arch-fallback.h:340:2: error: implicit declaration of function 'arch_atomic_add'; did you mean
340 | arch_atomic_add(1, v);
| ^~~~~~~~~~~~~~~
| arch_atomic_and
include/linux/atomic-arch-fallback.h: In function 'arch_atomic_dec':
>> include/linux/atomic-arch-fallback.h:511:2: error: implicit declaration of function 'arch_atomic_sub'; did you mean
511 | arch_atomic_sub(1, v);
| ^~~~~~~~~~~~~~~
| arch_atomic_set
cc1: some warnings being treated as errors
Makefile arch include kernel scripts source usr [scripts/Makefile.build:116: kernel/bounds.s] Error 1
Target '__build' not remade because of errors.
Makefile arch include kernel scripts source usr [Makefile:1235: prepare0] Error 2
Target 'prepare' not remade because of errors.
make: Makefile arch include kernel scripts source usr [Makefile:215: __sub-make] Error 2
make: Target 'prepare' not remade because of errors.
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for LOCKDEP
Depends on DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT && (FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE || ARM || ARC || X86)
Selected by
- PROVE_LOCKING && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
- LOCK_STAT && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
- DEBUG_LOCK_ALLOC && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
vim +340 include/linux/atomic-arch-fallback.h
37f8173dd84936 Peter Zijlstra 2020-01-24 335
37f8173dd84936 Peter Zijlstra 2020-01-24 336 #ifndef arch_atomic_inc
37f8173dd84936 Peter Zijlstra 2020-01-24 337 static __always_inline void
37f8173dd84936 Peter Zijlstra 2020-01-24 338 arch_atomic_inc(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 339 {
37f8173dd84936 Peter Zijlstra 2020-01-24 @340 arch_atomic_add(1, v);
37f8173dd84936 Peter Zijlstra 2020-01-24 341 }
37f8173dd84936 Peter Zijlstra 2020-01-24 342 #define arch_atomic_inc arch_atomic_inc
37f8173dd84936 Peter Zijlstra 2020-01-24 343 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 344
37f8173dd84936 Peter Zijlstra 2020-01-24 345 #ifndef arch_atomic_inc_return_relaxed
37f8173dd84936 Peter Zijlstra 2020-01-24 346 #ifdef arch_atomic_inc_return
37f8173dd84936 Peter Zijlstra 2020-01-24 347 #define arch_atomic_inc_return_acquire arch_atomic_inc_return
37f8173dd84936 Peter Zijlstra 2020-01-24 348 #define arch_atomic_inc_return_release arch_atomic_inc_return
37f8173dd84936 Peter Zijlstra 2020-01-24 349 #define arch_atomic_inc_return_relaxed arch_atomic_inc_return
37f8173dd84936 Peter Zijlstra 2020-01-24 350 #endif /* arch_atomic_inc_return */
37f8173dd84936 Peter Zijlstra 2020-01-24 351
37f8173dd84936 Peter Zijlstra 2020-01-24 352 #ifndef arch_atomic_inc_return
37f8173dd84936 Peter Zijlstra 2020-01-24 353 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 354 arch_atomic_inc_return(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 355 {
37f8173dd84936 Peter Zijlstra 2020-01-24 356 return arch_atomic_add_return(1, v);
37f8173dd84936 Peter Zijlstra 2020-01-24 357 }
37f8173dd84936 Peter Zijlstra 2020-01-24 358 #define arch_atomic_inc_return arch_atomic_inc_return
37f8173dd84936 Peter Zijlstra 2020-01-24 359 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 360
37f8173dd84936 Peter Zijlstra 2020-01-24 361 #ifndef arch_atomic_inc_return_acquire
37f8173dd84936 Peter Zijlstra 2020-01-24 362 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 363 arch_atomic_inc_return_acquire(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 364 {
37f8173dd84936 Peter Zijlstra 2020-01-24 365 return arch_atomic_add_return_acquire(1, v);
37f8173dd84936 Peter Zijlstra 2020-01-24 366 }
37f8173dd84936 Peter Zijlstra 2020-01-24 367 #define arch_atomic_inc_return_acquire arch_atomic_inc_return_acquire
37f8173dd84936 Peter Zijlstra 2020-01-24 368 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 369
37f8173dd84936 Peter Zijlstra 2020-01-24 370 #ifndef arch_atomic_inc_return_release
37f8173dd84936 Peter Zijlstra 2020-01-24 371 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 372 arch_atomic_inc_return_release(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 373 {
37f8173dd84936 Peter Zijlstra 2020-01-24 374 return arch_atomic_add_return_release(1, v);
37f8173dd84936 Peter Zijlstra 2020-01-24 375 }
37f8173dd84936 Peter Zijlstra 2020-01-24 376 #define arch_atomic_inc_return_release arch_atomic_inc_return_release
37f8173dd84936 Peter Zijlstra 2020-01-24 377 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 378
37f8173dd84936 Peter Zijlstra 2020-01-24 379 #ifndef arch_atomic_inc_return_relaxed
37f8173dd84936 Peter Zijlstra 2020-01-24 380 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 381 arch_atomic_inc_return_relaxed(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 382 {
37f8173dd84936 Peter Zijlstra 2020-01-24 383 return arch_atomic_add_return_relaxed(1, v);
37f8173dd84936 Peter Zijlstra 2020-01-24 384 }
37f8173dd84936 Peter Zijlstra 2020-01-24 385 #define arch_atomic_inc_return_relaxed arch_atomic_inc_return_relaxed
37f8173dd84936 Peter Zijlstra 2020-01-24 386 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 387
37f8173dd84936 Peter Zijlstra 2020-01-24 388 #else /* arch_atomic_inc_return_relaxed */
37f8173dd84936 Peter Zijlstra 2020-01-24 389
37f8173dd84936 Peter Zijlstra 2020-01-24 390 #ifndef arch_atomic_inc_return_acquire
37f8173dd84936 Peter Zijlstra 2020-01-24 391 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 392 arch_atomic_inc_return_acquire(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 393 {
37f8173dd84936 Peter Zijlstra 2020-01-24 394 int ret = arch_atomic_inc_return_relaxed(v);
37f8173dd84936 Peter Zijlstra 2020-01-24 395 __atomic_acquire_fence();
37f8173dd84936 Peter Zijlstra 2020-01-24 396 return ret;
37f8173dd84936 Peter Zijlstra 2020-01-24 397 }
37f8173dd84936 Peter Zijlstra 2020-01-24 398 #define arch_atomic_inc_return_acquire arch_atomic_inc_return_acquire
37f8173dd84936 Peter Zijlstra 2020-01-24 399 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 400
37f8173dd84936 Peter Zijlstra 2020-01-24 401 #ifndef arch_atomic_inc_return_release
37f8173dd84936 Peter Zijlstra 2020-01-24 402 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 403 arch_atomic_inc_return_release(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 404 {
37f8173dd84936 Peter Zijlstra 2020-01-24 405 __atomic_release_fence();
37f8173dd84936 Peter Zijlstra 2020-01-24 406 return arch_atomic_inc_return_relaxed(v);
37f8173dd84936 Peter Zijlstra 2020-01-24 407 }
37f8173dd84936 Peter Zijlstra 2020-01-24 408 #define arch_atomic_inc_return_release arch_atomic_inc_return_release
37f8173dd84936 Peter Zijlstra 2020-01-24 409 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 410
37f8173dd84936 Peter Zijlstra 2020-01-24 411 #ifndef arch_atomic_inc_return
37f8173dd84936 Peter Zijlstra 2020-01-24 412 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 413 arch_atomic_inc_return(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 414 {
37f8173dd84936 Peter Zijlstra 2020-01-24 415 int ret;
37f8173dd84936 Peter Zijlstra 2020-01-24 416 __atomic_pre_full_fence();
37f8173dd84936 Peter Zijlstra 2020-01-24 417 ret = arch_atomic_inc_return_relaxed(v);
37f8173dd84936 Peter Zijlstra 2020-01-24 418 __atomic_post_full_fence();
37f8173dd84936 Peter Zijlstra 2020-01-24 419 return ret;
37f8173dd84936 Peter Zijlstra 2020-01-24 420 }
37f8173dd84936 Peter Zijlstra 2020-01-24 421 #define arch_atomic_inc_return arch_atomic_inc_return
37f8173dd84936 Peter Zijlstra 2020-01-24 422 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 423
37f8173dd84936 Peter Zijlstra 2020-01-24 424 #endif /* arch_atomic_inc_return_relaxed */
37f8173dd84936 Peter Zijlstra 2020-01-24 425
37f8173dd84936 Peter Zijlstra 2020-01-24 426 #ifndef arch_atomic_fetch_inc_relaxed
37f8173dd84936 Peter Zijlstra 2020-01-24 427 #ifdef arch_atomic_fetch_inc
37f8173dd84936 Peter Zijlstra 2020-01-24 428 #define arch_atomic_fetch_inc_acquire arch_atomic_fetch_inc
37f8173dd84936 Peter Zijlstra 2020-01-24 429 #define arch_atomic_fetch_inc_release arch_atomic_fetch_inc
37f8173dd84936 Peter Zijlstra 2020-01-24 430 #define arch_atomic_fetch_inc_relaxed arch_atomic_fetch_inc
37f8173dd84936 Peter Zijlstra 2020-01-24 431 #endif /* arch_atomic_fetch_inc */
37f8173dd84936 Peter Zijlstra 2020-01-24 432
37f8173dd84936 Peter Zijlstra 2020-01-24 433 #ifndef arch_atomic_fetch_inc
37f8173dd84936 Peter Zijlstra 2020-01-24 434 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 435 arch_atomic_fetch_inc(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 436 {
37f8173dd84936 Peter Zijlstra 2020-01-24 437 return arch_atomic_fetch_add(1, v);
37f8173dd84936 Peter Zijlstra 2020-01-24 438 }
37f8173dd84936 Peter Zijlstra 2020-01-24 439 #define arch_atomic_fetch_inc arch_atomic_fetch_inc
37f8173dd84936 Peter Zijlstra 2020-01-24 440 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 441
37f8173dd84936 Peter Zijlstra 2020-01-24 442 #ifndef arch_atomic_fetch_inc_acquire
37f8173dd84936 Peter Zijlstra 2020-01-24 443 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 444 arch_atomic_fetch_inc_acquire(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 445 {
37f8173dd84936 Peter Zijlstra 2020-01-24 446 return arch_atomic_fetch_add_acquire(1, v);
37f8173dd84936 Peter Zijlstra 2020-01-24 447 }
37f8173dd84936 Peter Zijlstra 2020-01-24 448 #define arch_atomic_fetch_inc_acquire arch_atomic_fetch_inc_acquire
37f8173dd84936 Peter Zijlstra 2020-01-24 449 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 450
37f8173dd84936 Peter Zijlstra 2020-01-24 451 #ifndef arch_atomic_fetch_inc_release
37f8173dd84936 Peter Zijlstra 2020-01-24 452 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 453 arch_atomic_fetch_inc_release(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 454 {
37f8173dd84936 Peter Zijlstra 2020-01-24 455 return arch_atomic_fetch_add_release(1, v);
37f8173dd84936 Peter Zijlstra 2020-01-24 456 }
37f8173dd84936 Peter Zijlstra 2020-01-24 457 #define arch_atomic_fetch_inc_release arch_atomic_fetch_inc_release
37f8173dd84936 Peter Zijlstra 2020-01-24 458 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 459
37f8173dd84936 Peter Zijlstra 2020-01-24 460 #ifndef arch_atomic_fetch_inc_relaxed
37f8173dd84936 Peter Zijlstra 2020-01-24 461 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 462 arch_atomic_fetch_inc_relaxed(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 463 {
37f8173dd84936 Peter Zijlstra 2020-01-24 464 return arch_atomic_fetch_add_relaxed(1, v);
37f8173dd84936 Peter Zijlstra 2020-01-24 465 }
37f8173dd84936 Peter Zijlstra 2020-01-24 466 #define arch_atomic_fetch_inc_relaxed arch_atomic_fetch_inc_relaxed
37f8173dd84936 Peter Zijlstra 2020-01-24 467 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 468
37f8173dd84936 Peter Zijlstra 2020-01-24 469 #else /* arch_atomic_fetch_inc_relaxed */
37f8173dd84936 Peter Zijlstra 2020-01-24 470
37f8173dd84936 Peter Zijlstra 2020-01-24 471 #ifndef arch_atomic_fetch_inc_acquire
37f8173dd84936 Peter Zijlstra 2020-01-24 472 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 473 arch_atomic_fetch_inc_acquire(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 474 {
37f8173dd84936 Peter Zijlstra 2020-01-24 475 int ret = arch_atomic_fetch_inc_relaxed(v);
37f8173dd84936 Peter Zijlstra 2020-01-24 476 __atomic_acquire_fence();
37f8173dd84936 Peter Zijlstra 2020-01-24 477 return ret;
37f8173dd84936 Peter Zijlstra 2020-01-24 478 }
37f8173dd84936 Peter Zijlstra 2020-01-24 479 #define arch_atomic_fetch_inc_acquire arch_atomic_fetch_inc_acquire
37f8173dd84936 Peter Zijlstra 2020-01-24 480 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 481
37f8173dd84936 Peter Zijlstra 2020-01-24 482 #ifndef arch_atomic_fetch_inc_release
37f8173dd84936 Peter Zijlstra 2020-01-24 483 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 484 arch_atomic_fetch_inc_release(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 485 {
37f8173dd84936 Peter Zijlstra 2020-01-24 486 __atomic_release_fence();
37f8173dd84936 Peter Zijlstra 2020-01-24 487 return arch_atomic_fetch_inc_relaxed(v);
37f8173dd84936 Peter Zijlstra 2020-01-24 488 }
37f8173dd84936 Peter Zijlstra 2020-01-24 489 #define arch_atomic_fetch_inc_release arch_atomic_fetch_inc_release
37f8173dd84936 Peter Zijlstra 2020-01-24 490 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 491
37f8173dd84936 Peter Zijlstra 2020-01-24 492 #ifndef arch_atomic_fetch_inc
37f8173dd84936 Peter Zijlstra 2020-01-24 493 static __always_inline int
37f8173dd84936 Peter Zijlstra 2020-01-24 494 arch_atomic_fetch_inc(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 495 {
37f8173dd84936 Peter Zijlstra 2020-01-24 496 int ret;
37f8173dd84936 Peter Zijlstra 2020-01-24 497 __atomic_pre_full_fence();
37f8173dd84936 Peter Zijlstra 2020-01-24 498 ret = arch_atomic_fetch_inc_relaxed(v);
37f8173dd84936 Peter Zijlstra 2020-01-24 499 __atomic_post_full_fence();
37f8173dd84936 Peter Zijlstra 2020-01-24 500 return ret;
37f8173dd84936 Peter Zijlstra 2020-01-24 501 }
37f8173dd84936 Peter Zijlstra 2020-01-24 502 #define arch_atomic_fetch_inc arch_atomic_fetch_inc
37f8173dd84936 Peter Zijlstra 2020-01-24 503 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 504
37f8173dd84936 Peter Zijlstra 2020-01-24 505 #endif /* arch_atomic_fetch_inc_relaxed */
37f8173dd84936 Peter Zijlstra 2020-01-24 506
37f8173dd84936 Peter Zijlstra 2020-01-24 507 #ifndef arch_atomic_dec
37f8173dd84936 Peter Zijlstra 2020-01-24 508 static __always_inline void
37f8173dd84936 Peter Zijlstra 2020-01-24 509 arch_atomic_dec(atomic_t *v)
37f8173dd84936 Peter Zijlstra 2020-01-24 510 {
37f8173dd84936 Peter Zijlstra 2020-01-24 @511 arch_atomic_sub(1, v);
37f8173dd84936 Peter Zijlstra 2020-01-24 512 }
37f8173dd84936 Peter Zijlstra 2020-01-24 513 #define arch_atomic_dec arch_atomic_dec
37f8173dd84936 Peter Zijlstra 2020-01-24 514 #endif
37f8173dd84936 Peter Zijlstra 2020-01-24 515
:::::: The code at line 340 was first introduced by commit
:::::: 37f8173dd84936ea78000ed1cad24f8b18d48ebb locking/atomics: Flip fallbacks and instrumentation
:::::: TO: Peter Zijlstra <peterz@infradead.org>
:::::: CC: Thomas Gleixner <tglx@linutronix.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 37071 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-04-27 21:28 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-27 21:28 [mark-rutland:atomics/arch-atomic 24/25] include/linux/atomic-arch-fallback.h:340:2: error: implicit declaration of function 'arch_atomic_add'; did you mean 'arch_atomic_and'? kernel test robot
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.