From: kernel test robot <lkp@intel.com>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: oe-kbuild-all@lists.linux.dev, linux-input@vger.kernel.org
Subject: [dtor-input:next 32/43] drivers/input/touchscreen/mxs-lradc-ts.c:508:8: error: macro "class_spinlock_irqsave_constructor" passed 2 arguments, but takes just 1
Date: Wed, 25 Mar 2026 20:18:16 +0800 [thread overview]
Message-ID: <202603252057.JgSqGyIe-lkp@intel.com> (raw)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git next
head: 303cdff39cdb1895a6d2b08e8946cc89feaf405c
commit: a995f3ca3bd51c348bd4c8d1833d318bef1a5001 [32/43] Input: mxs-lradc-ts - use guard notation when acquiring spinlock
config: sparc-randconfig-r134-20260325 (https://download.01.org/0day-ci/archive/20260325/202603252057.JgSqGyIe-lkp@intel.com/config)
compiler: sparc-linux-gcc (GCC) 14.3.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260325/202603252057.JgSqGyIe-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/202603252057.JgSqGyIe-lkp@intel.com/
All errors (new ones prefixed by >>):
drivers/input/touchscreen/mxs-lradc-ts.c: In function 'mxs_lradc_ts_handle_irq':
>> drivers/input/touchscreen/mxs-lradc-ts.c:508:8: error: macro "class_spinlock_irqsave_constructor" passed 2 arguments, but takes just 1
508 | scoped_guard(spinlock_irqsave, &ts->lock, flags) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/sched.h:37,
from include/linux/ratelimit.h:6,
from include/linux/dev_printk.h:16,
from include/linux/device.h:15,
from drivers/input/touchscreen/mxs-lradc-ts.c:13:
include/linux/spinlock.h:623:9: note: macro "class_spinlock_irqsave_constructor" defined here
623 | #define class_spinlock_irqsave_constructor(_T) WITH_LOCK_GUARD_1_ATTRS(spinlock_irqsave, _T)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/irqflags.h:17,
from include/asm-generic/cmpxchg-local.h:6,
from arch/sparc/include/asm/cmpxchg_32.h:67,
from arch/sparc/include/asm/cmpxchg.h:7,
from arch/sparc/include/asm/atomic_32.h:17,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:67,
from include/linux/log2.h:12,
from include/asm-generic/div64.h:55,
from ./arch/sparc/include/generated/asm/div64.h:1,
from include/linux/math.h:6,
from include/linux/math64.h:6,
from include/linux/time64.h:5,
from include/linux/restart_block.h:9,
from include/linux/thread_info.h:14,
from arch/sparc/include/asm/current.h:15,
from include/linux/sched.h:12:
>> include/linux/cleanup.h:300:17: error: invalid initializer
300 | class_##_name##_constructor
| ^~~~~~
include/linux/cleanup.h:438:14: note: in expansion of macro 'CLASS'
438 | for (CLASS(_name, scope)(args); \
| ^~~~~
include/linux/cleanup.h:447:9: note: in expansion of macro '__scoped_guard'
447 | __scoped_guard(_name, __UNIQUE_ID(label), args)
| ^~~~~~~~~~~~~~
drivers/input/touchscreen/mxs-lradc-ts.c:508:17: note: in expansion of macro 'scoped_guard'
508 | scoped_guard(spinlock_irqsave, &ts->lock, flags) {
| ^~~~~~~~~~~~
vim +/class_spinlock_irqsave_constructor +508 drivers/input/touchscreen/mxs-lradc-ts.c
491
492 /* IRQ Handling */
493 static irqreturn_t mxs_lradc_ts_handle_irq(int irq, void *data)
494 {
495 struct mxs_lradc_ts *ts = data;
496 struct mxs_lradc *lradc = ts->lradc;
497 unsigned long reg = readl(ts->base + LRADC_CTRL1);
498 u32 clr_irq = mxs_lradc_irq_mask(lradc);
499 const u32 ts_irq_mask =
500 LRADC_CTRL1_TOUCH_DETECT_IRQ |
501 LRADC_CTRL1_LRADC_IRQ(TOUCHSCREEN_VCHANNEL1) |
502 LRADC_CTRL1_LRADC_IRQ(TOUCHSCREEN_VCHANNEL2);
503
504 if (!(reg & mxs_lradc_irq_mask(lradc)))
505 return IRQ_NONE;
506
507 if (reg & ts_irq_mask) {
> 508 scoped_guard(spinlock_irqsave, &ts->lock, flags) {
509 mxs_lradc_handle_touch(ts);
510 }
511 /* Make sure we don't clear the next conversion's interrupt. */
512 clr_irq &= ~(LRADC_CTRL1_LRADC_IRQ(TOUCHSCREEN_VCHANNEL1) |
513 LRADC_CTRL1_LRADC_IRQ(TOUCHSCREEN_VCHANNEL2));
514 writel(reg & clr_irq,
515 ts->base + LRADC_CTRL1 + STMP_OFFSET_REG_CLR);
516 }
517
518 return IRQ_HANDLED;
519 }
520
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2026-03-25 12:18 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=202603252057.JgSqGyIe-lkp@intel.com \
--to=lkp@intel.com \
--cc=dmitry.torokhov@gmail.com \
--cc=linux-input@vger.kernel.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox