On 12/19/25 7:40 AM, Marco Elver wrote:
Including <linux/local_lock.h> into an empty TU will result in the
compiler complaining:

./include/linux/local_lock.h: In function 
‘class_local_lock_irqsave_constructor’:
./include/linux/local_lock_internal.h:95:17: error: implicit declaration of function 
‘local_irq_save’; <...>
    95 |                 local_irq_save(flags);                          \
       |                 ^~~~~~~~~~~~~~

As well as (some architectures only, such as 'sh'):

./include/linux/local_lock_internal.h: In function ‘local_lock_acquire’:
./include/linux/local_lock_internal.h:33:20: error: ‘current’ undeclared (first 
use in this function)
    33 |         l->owner = current;

Include missing headers to allow including local_lock.h where the
required headers are not otherwise included.

Signed-off-by: Marco Elver <[email protected]>
---
  include/linux/local_lock_internal.h | 2 ++
  1 file changed, 2 insertions(+)

diff --git a/include/linux/local_lock_internal.h 
b/include/linux/local_lock_internal.h
index 8f82b4eb542f..1a1ea1232add 100644
--- a/include/linux/local_lock_internal.h
+++ b/include/linux/local_lock_internal.h
@@ -4,7 +4,9 @@
  #endif
#include <linux/percpu-defs.h>
+#include <linux/irqflags.h>
  #include <linux/lockdep.h>
+#include <asm/current.h>
#ifndef CONFIG_PREEMPT_RT

The abbreviation "TU" is uncommon. Hence, please expand that
abbreviation. Anyway:

Reviewed-by: Bart Van Assche <[email protected]>

Reply via email to