From: Greg Kroah-Hartman Date: Wed, 23 Dec 2020 14:16:52 +0000 (+0100) Subject: 4.14-stable patches X-Git-Tag: v5.10.3~14 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d9f381d418bcf22cbac28b8721db5d717fb3a0b6;p=thirdparty%2Fkernel%2Fstable-queue.git 4.14-stable patches added patches: hid-i2c-hid-add-vero-k147-to-descriptor-override.patch serial_core-check-for-port-state-when-tty-is-in-error-state.patch --- diff --git a/queue-4.14/hid-i2c-hid-add-vero-k147-to-descriptor-override.patch b/queue-4.14/hid-i2c-hid-add-vero-k147-to-descriptor-override.patch new file mode 100644 index 00000000000..e79457bbae1 --- /dev/null +++ b/queue-4.14/hid-i2c-hid-add-vero-k147-to-descriptor-override.patch @@ -0,0 +1,39 @@ +From c870d50ce387d84b6438211a7044c60afbd5d60a Mon Sep 17 00:00:00 2001 +From: Julian Sax +Date: Thu, 26 Nov 2020 18:51:58 +0100 +Subject: HID: i2c-hid: add Vero K147 to descriptor override + +From: Julian Sax + +commit c870d50ce387d84b6438211a7044c60afbd5d60a upstream. + +This device uses the SIPODEV SP1064 touchpad, which does not +supply descriptors, so it has to be added to the override list. + +Cc: stable@vger.kernel.org +Signed-off-by: Julian Sax +Reviewed-by: Hans de Goede +Signed-off-by: Jiri Kosina +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/hid/i2c-hid/i2c-hid-dmi-quirks.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +--- a/drivers/hid/i2c-hid/i2c-hid-dmi-quirks.c ++++ b/drivers/hid/i2c-hid/i2c-hid-dmi-quirks.c +@@ -397,6 +397,14 @@ static const struct dmi_system_id i2c_hi + }, + .driver_data = (void *)&sipodev_desc + }, ++ { ++ .ident = "Vero K147", ++ .matches = { ++ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "VERO"), ++ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "K147"), ++ }, ++ .driver_data = (void *)&sipodev_desc ++ }, + { } /* Terminate list */ + }; + diff --git a/queue-4.14/serial_core-check-for-port-state-when-tty-is-in-error-state.patch b/queue-4.14/serial_core-check-for-port-state-when-tty-is-in-error-state.patch new file mode 100644 index 00000000000..35418100c58 --- /dev/null +++ b/queue-4.14/serial_core-check-for-port-state-when-tty-is-in-error-state.patch @@ -0,0 +1,47 @@ +From 2f70e49ed860020f5abae4f7015018ebc10e1f0e Mon Sep 17 00:00:00 2001 +From: Alexey Kardashevskiy +Date: Thu, 3 Dec 2020 16:58:34 +1100 +Subject: serial_core: Check for port state when tty is in error state + +From: Alexey Kardashevskiy + +commit 2f70e49ed860020f5abae4f7015018ebc10e1f0e upstream. + +At the moment opening a serial device node (such as /dev/ttyS3) +succeeds even if there is no actual serial device behind it. +Reading/writing/ioctls fail as expected because the uart port is not +initialized (the type is PORT_UNKNOWN) and the TTY_IO_ERROR error state +bit is set fot the tty. + +However setting line discipline does not have these checks +8250_port.c (8250 is the default choice made by univ8250_console_init()). +As the result of PORT_UNKNOWN, uart_port::iobase is NULL which +a platform translates onto some address accessing which produces a crash +like below. + +This adds tty_port_initialized() to uart_set_ldisc() to prevent the crash. + +Found by syzkaller. + +Signed-off-by: Alexey Kardashevskiy +Link: https://lore.kernel.org/r/20201203055834.45838-1-aik@ozlabs.ru +Cc: stable +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/tty/serial/serial_core.c | 4 ++++ + 1 file changed, 4 insertions(+) + +--- a/drivers/tty/serial/serial_core.c ++++ b/drivers/tty/serial/serial_core.c +@@ -1434,6 +1434,10 @@ static void uart_set_ldisc(struct tty_st + { + struct uart_state *state = tty->driver_data; + struct uart_port *uport; ++ struct tty_port *port = &state->port; ++ ++ if (!tty_port_initialized(port)) ++ return; + + mutex_lock(&state->port.mutex); + uport = uart_port_check(state); diff --git a/queue-4.14/series b/queue-4.14/series index a8e4fff8651..ffe21522f14 100644 --- a/queue-4.14/series +++ b/queue-4.14/series @@ -55,3 +55,5 @@ usb-chipidea-ci_hdrc_imx-pass-disable_device_streaming-flag-to-imx6ul.patch arm-dts-exynos-fix-roles-of-usb-3.0-ports-on-odroid-xu.patch arm-dts-exynos-fix-usb-3.0-vbus-control-and-over-current-pins-on-exynos5410.patch arm-dts-exynos-fix-usb-3.0-pins-supply-being-turned-off-on-odroid-xu.patch +hid-i2c-hid-add-vero-k147-to-descriptor-override.patch +serial_core-check-for-port-state-when-tty-is-in-error-state.patch