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:28:35 +0200
commit057b9feda326b03beb65226ec316c7cf49616085 (patch)
tree51c6c3067ac60757738998cf57099aea8542f842
parentc6662f900b6b7fd928b0e08280b9b370fa6b8d9c (diff)
downloadlinux-stable-057b9feda326b03beb65226ec316c7cf49616085.tar.gz
linux-stable-057b9feda326b03beb65226ec316c7cf49616085.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 10aa9c2ec400..db32e53fa679 100644
--- a/drivers/accessibility/speakup/main.c
+++ b/drivers/accessibility/speakup/main.c
@@ -2430,6 +2430,7 @@ error_kbdnotifier:
mutex_lock(&spk_mutex);
synth_release();
mutex_unlock(&spk_mutex);
+ spk_ttyio_unregister_ldisc();
speakup_kobj_exit();
error_kobjects: