From: kernel test robot <lkp@intel.com>
To: Nathan Lynch via B4 Relay <devnull+nathan.lynch.amd.com@kernel.org>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: Re: [PATCH RFC 12/13] dmaengine: sdxi: Add Kconfig and Makefile
Date: Mon, 8 Sep 2025 13:19:19 +0800 [thread overview]
Message-ID: <202509081310.SsgvmgVR-lkp@intel.com> (raw)
In-Reply-To: <20250905-sdxi-base-v1-12-d0341a1292ba@amd.com>
Hi Nathan,
[This is a private test report for your RFC patch.]
kernel test robot noticed the following build errors:
[auto build test ERROR on c17b750b3ad9f45f2b6f7e6f7f4679844244f0b9]
url: https://github.com/intel-lab-lkp/linux/commits/Nathan-Lynch-via-B4-Relay/PCI-Add-SNIA-SDXI-accelerator-sub-class/20250906-025019
base: c17b750b3ad9f45f2b6f7e6f7f4679844244f0b9
patch link: https://lore.kernel.org/r/20250905-sdxi-base-v1-12-d0341a1292ba%40amd.com
patch subject: [PATCH RFC 12/13] dmaengine: sdxi: Add Kconfig and Makefile
config: hexagon-allmodconfig (https://download.01.org/0day-ci/archive/20250908/202509081310.SsgvmgVR-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250908/202509081310.SsgvmgVR-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/oe-kbuild-all/202509081310.SsgvmgVR-lkp@intel.com/
All error/warnings (new ones prefixed by >>):
>> drivers/dma/sdxi/dma.c:78:20: warning: result of comparison of constant 4294967296 with expression of type 'size_t' (aka 'unsigned int') is always false [-Wtautological-constant-out-of-range-compare]
78 | if (sdxi_cmd->len > MAX_DMA_COPY_BYTES)
| ~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~
1 warning generated.
--
>> drivers/dma/sdxi/enqueue.c:115:19: error: invalid operand for instruction
115 | bool success = cmpxchg(Write_Index,
| ^
include/linux/atomic/atomic-instrumented.h:4788:2: note: expanded from macro 'cmpxchg'
4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \
| ^
include/linux/atomic/atomic-arch-fallback.h:55:21: note: expanded from macro 'raw_cmpxchg'
55 | #define raw_cmpxchg arch_cmpxchg
| ^
arch/hexagon/include/asm/cmpxchg.h:62:3: note: expanded from macro 'arch_cmpxchg'
62 | "1: %0 = memw_locked(%1);\n" \
| ^
<inline asm>:1:12: note: instantiated into assembly here
1 | 1: r5:4 = memw_locked(r23);
| ^
>> drivers/dma/sdxi/enqueue.c:115:19: error: invalid operand for instruction
115 | bool success = cmpxchg(Write_Index,
| ^
include/linux/atomic/atomic-instrumented.h:4788:2: note: expanded from macro 'cmpxchg'
4788 | raw_cmpxchg(__ai_ptr, __VA_ARGS__); \
| ^
include/linux/atomic/atomic-arch-fallback.h:55:21: note: expanded from macro 'raw_cmpxchg'
55 | #define raw_cmpxchg arch_cmpxchg
| ^
arch/hexagon/include/asm/cmpxchg.h:65:4: note: expanded from macro 'arch_cmpxchg'
65 | " memw_locked(%1,p0) = %3;\n" \
| ^
<inline asm>:4:24: note: instantiated into assembly here
4 | memw_locked(r23,p0) = r9:8;
| ^
2 errors generated.
--
>> drivers/dma/sdxi/descriptor_kunit.c:34:19: warning: implicit conversion from 'unsigned long long' to 'size_t' (aka 'unsigned int') changes value from 4294967297 to 1 [-Wconstant-conversion]
34 | copy.len = SZ_4G + 1;
| ~ ~~~~~~^~~
drivers/dma/sdxi/descriptor_kunit.c:42:13: warning: implicit conversion from 'unsigned long long' to 'size_t' (aka 'unsigned int') changes value from 4294967296 to 0 [-Wconstant-conversion]
42 | copy.len = SZ_4G;
| ~ ^~~~~
include/linux/sizes.h:54:18: note: expanded from macro 'SZ_4G'
54 | #define SZ_4G _AC(0x100000000, ULL)
| ^~~~~~~~~~~~~~~~~~~~~
include/uapi/linux/const.h:21:18: note: expanded from macro '_AC'
21 | #define _AC(X,Y) __AC(X,Y)
| ^~~~~~~~~
include/uapi/linux/const.h:20:20: note: expanded from macro '__AC'
20 | #define __AC(X,Y) (X##Y)
| ^~~~
<scratch space>:71:1: note: expanded from here
71 | 0x100000000ULL
| ^~~~~~~~~~~~~~
2 warnings generated.
vim +115 drivers/dma/sdxi/enqueue.c
65c648c037296d4 Nathan Lynch 2025-09-05 83
65c648c037296d4 Nathan Lynch 2025-09-05 84 int sdxi_enqueue(const __le64 *enq_entries, /* Ptr to entries to enqueue */
65c648c037296d4 Nathan Lynch 2025-09-05 85 u64 enq_num, /* Number of entries to enqueue */
65c648c037296d4 Nathan Lynch 2025-09-05 86 __le64 *ring_base, /* Ptr to ring location */
65c648c037296d4 Nathan Lynch 2025-09-05 87 u64 ring_size, /* (Ring Size in bytes)/64 */
65c648c037296d4 Nathan Lynch 2025-09-05 88 __le64 const volatile * const Read_Index, /* Ptr to Read_Index location */
65c648c037296d4 Nathan Lynch 2025-09-05 89 __le64 volatile * const Write_Index, /* Ptr to Write_Index location */
65c648c037296d4 Nathan Lynch 2025-09-05 90 __le64 __iomem *Door_Bell) /* Ptr to Ring Doorbell location */
65c648c037296d4 Nathan Lynch 2025-09-05 91 {
65c648c037296d4 Nathan Lynch 2025-09-05 92 u64 old_write_idx;
65c648c037296d4 Nathan Lynch 2025-09-05 93 u64 new_idx;
65c648c037296d4 Nathan Lynch 2025-09-05 94
65c648c037296d4 Nathan Lynch 2025-09-05 95 while (true) {
65c648c037296d4 Nathan Lynch 2025-09-05 96 u64 read_idx;
65c648c037296d4 Nathan Lynch 2025-09-05 97
65c648c037296d4 Nathan Lynch 2025-09-05 98 read_idx = le64_to_cpu(READ_ONCE(*Read_Index));
65c648c037296d4 Nathan Lynch 2025-09-05 99 dma_rmb(); /* Get Read_Index before Write_Index to always get consistent values */
65c648c037296d4 Nathan Lynch 2025-09-05 100 old_write_idx = le64_to_cpu(READ_ONCE(*Write_Index));
65c648c037296d4 Nathan Lynch 2025-09-05 101
65c648c037296d4 Nathan Lynch 2025-09-05 102 if (read_idx > old_write_idx) {
65c648c037296d4 Nathan Lynch 2025-09-05 103 /* Only happens if Write_Index wraps or ring has bad setup */
65c648c037296d4 Nathan Lynch 2025-09-05 104 return -EIO;
65c648c037296d4 Nathan Lynch 2025-09-05 105 }
65c648c037296d4 Nathan Lynch 2025-09-05 106
65c648c037296d4 Nathan Lynch 2025-09-05 107 new_idx = old_write_idx + enq_num;
65c648c037296d4 Nathan Lynch 2025-09-05 108 if (new_idx - read_idx > ring_size) {
65c648c037296d4 Nathan Lynch 2025-09-05 109 cpu_relax();
65c648c037296d4 Nathan Lynch 2025-09-05 110 continue; /* Not enough free entries, try again */
65c648c037296d4 Nathan Lynch 2025-09-05 111 }
65c648c037296d4 Nathan Lynch 2025-09-05 112
65c648c037296d4 Nathan Lynch 2025-09-05 113 if (SDXI_MULTI_PRODUCER) {
65c648c037296d4 Nathan Lynch 2025-09-05 114 /* Try to atomically update Write_Index. */
65c648c037296d4 Nathan Lynch 2025-09-05 @115 bool success = cmpxchg(Write_Index,
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2025-09-08 5:19 UTC|newest]
Thread overview: 59+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-05 18:48 [PATCH RFC 00/13] dmaengine: Smart Data Accelerator Interface (SDXI) basic support Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-05 18:48 ` [PATCH RFC 01/13] PCI: Add SNIA SDXI accelerator sub-class Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-15 17:25 ` Bjorn Helgaas
2025-09-15 20:17 ` Nathan Lynch
2025-09-05 18:48 ` [PATCH RFC 02/13] dmaengine: sdxi: Add control structure definitions Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-05 18:48 ` [PATCH RFC 03/13] dmaengine: sdxi: Add descriptor encoding and unit tests Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-15 11:52 ` Jonathan Cameron
2025-09-15 19:30 ` Nathan Lynch
2025-09-16 14:20 ` Jonathan Cameron
2025-09-16 19:06 ` Nathan Lynch
2025-09-05 18:48 ` [PATCH RFC 04/13] dmaengine: sdxi: Add MMIO register definitions Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-05 18:48 ` [PATCH RFC 05/13] dmaengine: sdxi: Add software data structures Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-15 11:59 ` Jonathan Cameron
2025-09-16 19:07 ` Nathan Lynch
2025-09-16 9:38 ` Markus Elfring
2025-09-05 18:48 ` [PATCH RFC 06/13] dmaengine: sdxi: Add error reporting support Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-15 12:11 ` Jonathan Cameron
2025-09-15 20:42 ` Nathan Lynch
2025-09-16 14:23 ` Jonathan Cameron
2025-09-05 18:48 ` [PATCH RFC 07/13] dmaengine: sdxi: Import descriptor enqueue code from spec Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-15 12:18 ` Jonathan Cameron
2025-09-16 17:05 ` [External] : " ALOK TIWARI
2025-09-05 18:48 ` [PATCH RFC 08/13] dmaengine: sdxi: Context creation/removal, descriptor submission Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-15 14:12 ` Jonathan Cameron
2025-09-16 20:40 ` Nathan Lynch
2025-09-17 13:34 ` Jonathan Cameron
2025-09-15 19:42 ` Markus Elfring
2025-09-05 18:48 ` [PATCH RFC 09/13] dmaengine: sdxi: Add core device management code Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-15 14:23 ` Jonathan Cameron
2025-09-16 21:23 ` Nathan Lynch
2025-09-05 18:48 ` [PATCH RFC 10/13] dmaengine: sdxi: Add PCI driver support Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-05 19:14 ` Mario Limonciello
2025-09-10 15:25 ` Nathan Lynch
2025-09-05 20:05 ` Bjorn Helgaas
2025-09-10 15:28 ` Nathan Lynch
2025-09-15 15:03 ` Jonathan Cameron
2025-09-16 16:43 ` [External] : " ALOK TIWARI
2025-09-05 18:48 ` [PATCH RFC 11/13] dmaengine: sdxi: Add DMA engine provider Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-15 15:16 ` Jonathan Cameron
2025-09-05 18:48 ` [PATCH RFC 12/13] dmaengine: sdxi: Add Kconfig and Makefile Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
2025-09-08 4:48 ` kernel test robot
2025-09-08 5:19 ` kernel test robot [this message]
2025-09-15 15:08 ` Jonathan Cameron
2025-09-15 16:44 ` Nathan Lynch
2025-09-05 18:48 ` [PATCH RFC 13/13] MAINTAINERS: Add entry for SDXI driver Nathan Lynch
2025-09-05 18:48 ` Nathan Lynch via B4 Relay
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=202509081310.SsgvmgVR-lkp@intel.com \
--to=lkp@intel.com \
--cc=devnull+nathan.lynch.amd.com@kernel.org \
--cc=llvm@lists.linux.dev \
--cc=oe-kbuild-all@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.