summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaoxiang Li <lihaoxiang@isrc.iscas.ac.cn>2026-06-01 01:08:04 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2026-09-02 14:29:19 +0200
commitdaba8d1cd995c0e64ac28ee90ff6227fe9d9550d (patch)
treede987dbe6d93710574f3bca52b3871a4492faf13
parentba537c32de311ddd9d9032dac53975ce3849b435 (diff)
downloadlinux-daba8d1cd995c0e64ac28ee90ff6227fe9d9550d.tar.gz
linux-daba8d1cd995c0e64ac28ee90ff6227fe9d9550d.zip
accessibility: speakup: unregister tty ldisc on later init failures
commit a76acbaec9b8fd74413646984d2e3626d0543e39 upstream. The ldisc registration is intentionally non-fatal, since some synth drivers do not use tty/ldisc. However, once speakup_init() continues past the registration point and later fails, the init unwind path should mirror speakup_exit() and call spk_ttyio_unregister_ldisc(). Add the missing unregister call to the error path after synth_release(), matching the normal module exit cleanup order. Signed-off-by: Haoxiang Li <lihaoxiang@isrc.iscas.ac.cn> Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Fixes: e23a9b439ce9 ("staging: speakup: safely register and unregister ldisc") Cc: stable@vger.kernel.org Link: https://patch.msgid.link/20260531230804.254962-16-samuel.thibault@ens-lyon.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/accessibility/speakup/main.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/accessibility/speakup/main.c b/drivers/accessibility/speakup/main.c
index f677ad2177c2..422929651378 100644
--- a/drivers/accessibility/speakup/main.c
+++ b/drivers/accessibility/speakup/main.c
@@ -2444,6 +2444,7 @@ error_kbdnotifier:
mutex_lock(&spk_mutex);
synth_release();
mutex_unlock(&spk_mutex);
+ spk_ttyio_unregister_ldisc();
speakup_kobj_exit();
error_kobjects: