Hi Dan, I have sent a fix for this bug: https://lore.kernel.org/lkml/20240408110610.15676-1-jay.buddhabhatti@xxxxxxx/T/#m584deb72bef91ebea163223f3adf6f6861b69f2c Thanks, Jay > -----Original Message----- > From: Dan Carpenter <dan.carpenter@xxxxxxxxxx> > Sent: Friday, April 5, 2024 3:40 PM > To: haribabu.gattem@xxxxxxxxxx > Cc: Buddhabhatti, Jay <jay.buddhabhatti@xxxxxxx>; Simek, Michal > <michal.simek@xxxxxxx>; kernel-janitors@xxxxxxxxxxxxxxx > Subject: [bug report] soc: xilinx: Fix for call trace due to the usage of > smp_processor_id() > > Hello HariBabu Gattem, > > Commit daed80ed0758 ("soc: xilinx: Fix for call trace due to the usage of > smp_processor_id()") from Oct 26, 2023 (linux-next), leads to the following > Smatch static checker warning: > > kernel/irq/manage.c:1588 __setup_irq() > warn: sleeping in atomic context > > drivers/soc/xilinx/xlnx_event_manager.c > 608 virq_sgi = irq_create_fwspec_mapping(&sgi_fwspec); > 609 > 610 cpu = get_cpu(); > ^^^^^^^^^ > get_cpu() disables preemption > > 611 per_cpu(cpu_number1, cpu) = cpu; > 612 ret = request_percpu_irq(virq_sgi, xlnx_event_handler, > "xlnx_event_mgmt", > ^^^^^^^^^^^^^^^^^^ You can't call request_percpu_irq() with > preempt disabled. It does sleeping allocations and it uses mutexes. The way to > test this at runtime is to enable DEBUG_ATOMIC_SLEEP. > > 613 &cpu_number1); > 614 put_cpu(); > 615 > 616 WARN_ON(ret); > > regards, > dan carpenter