diff options
author | Edward Adam Davis <eadavis@qq.com> | 2025-09-09 08:51:22 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-09-12 15:58:41 +0200 |
commit | fc702e7df456e219f029d0192fbc7cb357a16f4c (patch) | |
tree | 4be5a011e6f9641c7d9e5164e8d21475798999dd | |
parent | e81783899d7d19cad567b68e115fcb37880e427b (diff) |
vt: move vc_saved_screen to within tty allocated judgment
Everything starts with the assumption that a tty has been allocated.
Therefore, Move it to within the tty allocation check.
Fixes: 23743ba64709 ("vt: add support for smput/rmput escape codes")
Reported-by: syzbot+f6cb41c144427dc0796a@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=f6cb41c144427dc0796a
Tested-by: syzbot+f6cb41c144427dc0796a@syzkaller.appspotmail.com
Signed-off-by: Edward Adam Davis <eadavis@qq.com>
Reviewed-by: Jiri Slaby <jirislaby@kernel.org>
Link: https://lore.kernel.org/r/tencent_CAD45DB31906CF890DBB25AB0DED12205D07@qq.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/tty/vt/vt.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c index 1d9abcfac4c9..6e0089b85c27 100644 --- a/drivers/tty/vt/vt.c +++ b/drivers/tty/vt/vt.c @@ -1341,10 +1341,10 @@ struct vc_data *vc_deallocate(unsigned int currcons) vc_uniscr_set(vc, NULL); kfree(vc->vc_screenbuf); vc_cons[currcons].d = NULL; - } - if (vc->vc_saved_screen != NULL) { - kfree(vc->vc_saved_screen); - vc->vc_saved_screen = NULL; + if (vc->vc_saved_screen != NULL) { + kfree(vc->vc_saved_screen); + vc->vc_saved_screen = NULL; + } } return vc; } |