diff options
| author | Sebastian Andrzej Siewior <[email protected]> | 2022-02-16 18:50:46 +0100 |
|---|---|---|
| committer | Jakub Kicinski <[email protected]> | 2022-02-23 08:04:27 -0800 |
| commit | 167053f8dd0ed60287858448696b4784d7e1d899 (patch) | |
| tree | 4cc4c7db171bf68db80a02f856762690fb7cb5a9 /include/linux/debugobjects.h | |
| parent | 6ce71687d4f4105350ddbc92aa12e6bc9839f103 (diff) | |
net: Correct wrong BH disable in hard-interrupt.
I missed the obvious case where netif_ix() is invoked from hard-IRQ
context.
Disabling bottom halves is only needed in process context. This ensures
that the code remains on the current CPU and that the soft-interrupts
are processed at local_bh_enable() time.
In hard- and soft-interrupt context this is already the case and the
soft-interrupts will be processed once the context is left (at irq-exit
time).
Disable bottom halves if neither hard-interrupts nor soft-interrupts are
disabled. Update the kernel-doc, mention that interrupts must be enabled
if invoked from process context.
Fixes: baebdf48c3600 ("net: dev: Makes sure netif_rx() can be invoked in any context.")
Reported-by: Marek Szyprowski <[email protected]>
Signed-off-by: Sebastian Andrzej Siewior <[email protected]>
Tested-by: Marek Szyprowski <[email protected]>
Tested-by: Geert Uytterhoeven <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
Diffstat (limited to 'include/linux/debugobjects.h')
0 files changed, 0 insertions, 0 deletions