printk: cpu sync always disable interrupts

The CPU sync functions are a NOP for !CONFIG_SMP. But for
!CONFIG_SMP they still need to disable interrupts in order to
preserve context within the CPU sync sections.

Signed-off-by: John Ogness <john.ogness@linutronix.de>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Reviewed-by: Sergey Senozhatsky <senozhatsky@chromium.org>
Signed-off-by: Petr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/20220421212250.565456-3-john.ogness@linutronix.de
This commit is contained in:
John Ogness 2022-04-21 23:28:37 +02:06 коммит произвёл Petr Mladek
Родитель faebd693c5
Коммит f5343321b7
1 изменённых файлов: 9 добавлений и 9 удалений

Просмотреть файл

@ -281,9 +281,16 @@ extern int __printk_cpu_sync_try_get(void);
extern void __printk_cpu_sync_wait(void); extern void __printk_cpu_sync_wait(void);
extern void __printk_cpu_sync_put(void); extern void __printk_cpu_sync_put(void);
#else
#define __printk_cpu_sync_try_get() true
#define __printk_cpu_sync_wait()
#define __printk_cpu_sync_put()
#endif /* CONFIG_SMP */
/** /**
* printk_cpu_sync_get_irqsave() - Acquire the printk cpu-reentrant spinning * printk_cpu_sync_get_irqsave() - Disable interrupts and acquire the printk
* lock and disable interrupts. * cpu-reentrant spinning lock.
* @flags: Stack-allocated storage for saving local interrupt state, * @flags: Stack-allocated storage for saving local interrupt state,
* to be passed to printk_cpu_sync_put_irqrestore(). * to be passed to printk_cpu_sync_put_irqrestore().
* *
@ -322,13 +329,6 @@ extern void __printk_cpu_sync_put(void);
local_irq_restore(flags); \ local_irq_restore(flags); \
} while (0) } while (0)
#else
#define printk_cpu_sync_get_irqsave(flags) ((void)flags)
#define printk_cpu_sync_put_irqrestore(flags) ((void)flags)
#endif /* CONFIG_SMP */
extern int kptr_restrict; extern int kptr_restrict;
/** /**