summaryrefslogtreecommitdiff
path: root/fs/squashfs/dir.c
diff options
context:
space:
mode:
authorDaniel Thompson <daniel.thompson@linaro.org>2024-04-24 17:21:41 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-05-25 17:17:18 +0300
commitecef5df7961a7de90be6699c6b021b87c377a7a2 (patch)
tree5baea19023f256ccfa499c0d955da1cc1d60a988 /fs/squashfs/dir.c
parent6b40d4c2620966e014157cbb3fae695a6d7dd223 (diff)
downloadlinux-ecef5df7961a7de90be6699c6b021b87c377a7a2.tar.xz
serial: kgdboc: Fix NMI-safety problems from keyboard reset code
commit b2aba15ad6f908d1a620fd97f6af5620c3639742 upstream. Currently, when kdb is compiled with keyboard support, then we will use schedule_work() to provoke reset of the keyboard status. Unfortunately schedule_work() gets called from the kgdboc post-debug-exception handler. That risks deadlock since schedule_work() is not NMI-safe and, even on platforms where the NMI is not directly used for debugging, the debug trap can have NMI-like behaviour depending on where breakpoints are placed. Fix this by using the irq work system, which is NMI-safe, to defer the call to schedule_work() to a point when it is safe to call. Reported-by: Liuye <liu.yeC@h3c.com> Closes: https://lore.kernel.org/all/20240228025602.3087748-1-liu.yeC@h3c.com/ Cc: stable@vger.kernel.org Reviewed-by: Douglas Anderson <dianders@chromium.org> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Link: https://lore.kernel.org/r/20240424-kgdboc_fix_schedule_work-v2-1-50f5a490aec5@linaro.org Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs/squashfs/dir.c')
0 files changed, 0 insertions, 0 deletions