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:27:28 +0200
commit9ca3aab0829b0d05b8316b1565d1585989a5d51b (patch)
treeafa9f9e026283e7f9ca7a993e1de048a591139c6
parent8fe6beaac47cb88be740a48d16dfe7b3bff816ce (diff)
downloadlinux-stable-9ca3aab0829b0d05b8316b1565d1585989a5d51b.tar.gz
linux-stable-9ca3aab0829b0d05b8316b1565d1585989a5d51b.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 3c3e91114164..088357a3ecc3 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: