]> git.baikalelectronics.ru Git - kernel.git/commit
staging: greybus: uart: fix tty use after free
authorJohan Hovold <johan@kernel.org>
Mon, 6 Sep 2021 12:45:38 +0000 (14:45 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 Sep 2021 08:09:21 +0000 (10:09 +0200)
commit4e4fbeb1be24ca1cff60109ebde520e3d9a47413
tree26d4bb822f5d0ad309a3c98f4d0a73174cd741a9
parent9e5e77ee20614da12704e34837fd0909277b14d6
staging: greybus: uart: fix tty use after free

commit 92dc0b1f46e12cfabd28d709bb34f7a39431b44f upstream.

User space can hold a tty open indefinitely and tty drivers must not
release the underlying structures until the last user is gone.

Switch to using the tty-port reference counter to manage the life time
of the greybus tty state to avoid use after free after a disconnect.

Fixes: a18e15175708 ("greybus: more uart work")
Cc: stable@vger.kernel.org # 4.9
Reviewed-by: Alex Elder <elder@linaro.org>
Signed-off-by: Johan Hovold <johan@kernel.org>
Link: https://lore.kernel.org/r/20210906124538.22358-1-johan@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/greybus/uart.c