Hi all, After merging the pinctrl tree, today's linux-next build (x86_64 allmodconfig) failed like this: In file included from include/linux/wait.h:9, from include/linux/pid.h:6, from include/linux/sched.h:14, from include/linux/ratelimit.h:6, from include/linux/dev_printk.h:16, from include/linux/device.h:15, from drivers/pinctrl/samsung/pinctrl-s3c64xx.c:14: drivers/pinctrl/samsung/pinctrl-s3c64xx.c: In function 's3c64xx_irq_set_function': drivers/pinctrl/samsung/pinctrl-s3c64xx.c:289:20: error: passing argument 1 of 'spinlock_check' from incompatible pointer type [-Werror=incompatible-pointer-types] 289 | spin_lock_irqsave(&bank->slock, flags); | ^~~~~~~~~~~~ | | | raw_spinlock_t * {aka struct raw_spinlock *} include/linux/spinlock.h:252:34: note: in definition of macro 'raw_spin_lock_irqsave' 252 | flags = _raw_spin_lock_irqsave(lock); \ | ^~~~ drivers/pinctrl/samsung/pinctrl-s3c64xx.c:289:2: note: in expansion of macro 'spin_lock_irqsave' 289 | spin_lock_irqsave(&bank->slock, flags); | ^~~~~~~~~~~~~~~~~ In file included from include/linux/wait.h:9, from include/linux/pid.h:6, from include/linux/sched.h:14, from include/linux/ratelimit.h:6, from include/linux/dev_printk.h:16, from include/linux/device.h:15, from drivers/pinctrl/samsung/pinctrl-s3c64xx.c:14: include/linux/spinlock.h:327:67: note: expected 'spinlock_t *' {aka 'struct spinlock *'} but argument is of type 'raw_spinlock_t *' {aka 'struct raw_spinlock *'} 327 | static __always_inline raw_spinlock_t *spinlock_check(spinlock_t *lock) | ~~~~~~~~~~~~^~~~ drivers/pinctrl/samsung/pinctrl-s3c64xx.c:296:25: error: passing argument 1 of 'spin_unlock_irqrestore' from incompatible pointer type [-Werror=incompatible-pointer-types] 296 | spin_unlock_irqrestore(&bank->slock, flags); | ^~~~~~~~~~~~ | | | raw_spinlock_t * {aka struct raw_spinlock *} In file included from include/linux/wait.h:9, from include/linux/pid.h:6, from include/linux/sched.h:14, from include/linux/ratelimit.h:6, from include/linux/dev_printk.h:16, from include/linux/device.h:15, from drivers/pinctrl/samsung/pinctrl-s3c64xx.c:14: include/linux/spinlock.h:407:64: note: expected 'spinlock_t *' {aka 'struct spinlock *'} but argument is of type 'raw_spinlock_t *' {aka 'struct raw_spinlock *'} 407 | static __always_inline void spin_unlock_irqrestore(spinlock_t *lock, unsigned long flags) | ~~~~~~~~~~~~^~~~ Caused by commit 1f306ecbe0f6 ("pinctrl: samsung: use raw_spinlock for locking") I have used the pinctrl tree from next-20210125 for today. -- Cheers, Stephen Rothwell
Attachment:
pgpm45U7MKGho.pgp
Description: OpenPGP digital signature