Re: [PATCH RESEND] thermal/drivers/qcom/lmh: remove false lockdep backtrace

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/10/2024 07:48, Dmitry Baryshkov wrote:
Annotate LMH IRQs with lockdep classes so that the lockdep doesn't
report possible recursive locking issue between LMH and GIC interrupts.

For the reference:

        CPU0
        ----
   lock(&irq_desc_lock_class);
   lock(&irq_desc_lock_class);

  *** DEADLOCK ***

Call trace:
  dump_backtrace+0x98/0xf0
  show_stack+0x18/0x24
  dump_stack_lvl+0x90/0xd0
  dump_stack+0x18/0x24
  print_deadlock_bug+0x258/0x348
  __lock_acquire+0x1078/0x1f44
  lock_acquire+0x1fc/0x32c
  _raw_spin_lock_irqsave+0x60/0x88
  __irq_get_desc_lock+0x58/0x98
  enable_irq+0x38/0xa0
  lmh_enable_interrupt+0x2c/0x38
  irq_enable+0x40/0x8c
  __irq_startup+0x78/0xa4
  irq_startup+0x78/0x168
  __enable_irq+0x70/0x7c
  enable_irq+0x4c/0xa0
  qcom_cpufreq_ready+0x20/0x2c
  cpufreq_online+0x2a8/0x988
  cpufreq_add_dev+0x80/0x98
  subsys_interface_register+0x104/0x134
  cpufreq_register_driver+0x150/0x234
  qcom_cpufreq_hw_driver_probe+0x2a8/0x388
  platform_probe+0x68/0xc0
  really_probe+0xbc/0x298
  __driver_probe_device+0x78/0x12c
  driver_probe_device+0x3c/0x160
  __device_attach_driver+0xb8/0x138
  bus_for_each_drv+0x84/0xe0
  __device_attach+0x9c/0x188
  device_initial_probe+0x14/0x20
  bus_probe_device+0xac/0xb0
  deferred_probe_work_func+0x8c/0xc8
  process_one_work+0x20c/0x62c
  worker_thread+0x1bc/0x36c
  kthread+0x120/0x124
  ret_from_fork+0x10/0x20

Fixes: 53bca371cdf7 ("thermal/drivers/qcom: Add support for LMh driver")
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>
---


Applied, thanks


--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux