Sebastian Andrzej Siewior
44117a1d17
serial: core: mark port as initialized after successful IRQ change
...
setserial changes the IRQ via uart_set_info(). It invokes
uart_shutdown() which free the current used IRQ and clear
TTY_PORT_INITIALIZED. It will then update the IRQ number and invoke
uart_startup() before returning to the caller leaving
TTY_PORT_INITIALIZED cleared.
The next open will crash with
| list_add double add: new=ffffffff839fcc98, prev=ffffffff839fcc98, next=ffffffff839fcc98.
since the close from the IOCTL won't free the IRQ (and clean the list)
due to the TTY_PORT_INITIALIZED check in uart_shutdown().
There is same pattern in uart_do_autoconfig() and I *think* it also
needs to set TTY_PORT_INITIALIZED there.
Is there a reason why uart_startup() does not set the flag by itself
after the IRQ has been acquired (since it is cleared in uart_shutdown)?
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-01-22 14:20:56 +01:00
..
2017-11-02 11:10:55 +01:00
2017-12-23 13:47:22 -08:00
2017-11-14 16:54:12 -08:00
2017-12-18 15:47:12 +01:00
2017-12-04 13:57:03 -08:00
2017-11-29 13:10:25 -08:00
2017-11-27 12:36:45 -08:00
2017-12-31 10:50:05 -08:00
2017-11-15 11:56:19 -08:00
2017-12-20 13:16:33 -07:00
2017-11-04 09:26:51 +09:00
2017-12-04 17:15:20 +00:00
2017-11-14 15:32:19 -08:00
2017-12-11 17:01:59 -08:00
2017-12-26 17:34:03 -08:00
2017-11-23 16:29:05 +01:00
2017-12-18 12:09:39 +01:00
2017-11-16 12:47:46 -08:00
2017-11-16 12:47:46 -08:00
2017-11-29 18:40:42 -08:00
2017-11-13 01:41:39 +01:00
2017-11-02 11:10:55 +01:00
2017-12-15 09:53:04 +05:30
2017-11-17 14:58:01 -08:00
2017-11-15 13:46:33 -08:00
2017-11-02 11:10:55 +01:00
2017-11-13 21:14:07 -08:00
2017-11-13 17:56:58 -08:00
2017-12-10 08:26:59 -08:00
2017-11-02 11:10:55 +01:00
2017-11-16 09:10:59 -08:00
2017-12-29 21:13:04 +01:00
2017-12-28 05:20:07 +10:00
2017-12-30 10:16:51 -08:00
2017-11-15 13:35:43 -08:00
2017-12-18 15:47:12 +01:00
2017-12-26 11:53:24 -08:00
2017-11-17 20:16:20 -08:00
2017-12-04 07:14:30 -05:00
2017-12-12 23:27:04 +01:00
2017-11-19 08:04:41 -10:00
2017-11-13 01:34:14 +01:00
2017-12-02 11:15:14 +00:00
2017-12-28 23:06:01 -08:00
2017-11-21 16:35:54 -08:00
2017-12-29 21:13:04 +01:00
2017-12-29 21:13:04 +01:00
2017-11-21 15:57:09 -08:00
2017-12-27 20:45:07 +01:00
2017-11-21 15:46:44 -08:00
2017-11-13 17:56:58 -08:00
2017-11-15 13:39:18 -08:00
2017-11-02 11:10:55 +01:00
2017-12-15 12:53:37 -08:00
2017-12-08 13:18:47 -08:00
2017-11-16 16:05:01 -08:00
2017-11-21 15:57:07 -08:00
2017-11-15 13:46:33 -08:00
2017-12-28 12:26:35 +01:00
2017-12-17 13:54:31 -08:00
2017-12-11 13:43:27 +01:00
2017-12-18 09:16:35 +01:00
2017-12-28 23:20:21 -08:00
2017-11-21 15:57:09 -08:00
2017-11-21 15:57:07 -08:00
2017-11-13 12:10:24 -08:00
2017-12-21 14:59:27 -08:00
2017-12-15 15:18:07 +01:00
2017-12-23 16:46:23 +01:00
2017-12-13 15:01:47 -05:00
2017-11-02 11:10:55 +01:00
2017-12-17 21:06:25 +01:00
2017-11-16 09:10:59 -08:00
2017-12-31 13:13:56 -08:00
2017-11-17 16:10:04 -08:00
2017-11-15 10:56:56 -08:00
2017-12-15 16:00:41 +05:30
2017-12-29 21:13:04 +01:00
2017-12-11 17:26:03 -08:00
2017-11-02 11:10:55 +01:00
2017-11-15 13:37:15 -08:00
2017-11-21 15:57:07 -08:00
2017-11-16 13:06:27 -08:00
2017-11-22 21:09:18 -10:00
2017-11-17 16:56:17 -08:00
2017-11-13 17:56:58 -08:00
2017-11-16 09:15:57 -08:00
2017-11-17 20:14:10 -08:00
2017-11-16 16:05:01 -08:00
2017-11-17 20:12:08 -08:00
2017-11-25 08:37:16 -10:00
2017-12-20 15:11:49 -05:00
2017-11-17 20:21:44 -08:00
2017-12-30 14:31:30 -08:00
2017-11-14 16:54:12 -08:00
2017-11-30 15:29:44 -08:00
2017-12-19 11:07:00 +00:00
2017-11-02 11:10:55 +01:00
2017-12-19 15:53:39 +01:00
2017-12-18 13:55:43 -07:00
2017-11-29 10:24:57 +01:00
2017-11-17 14:31:27 -08:00
2017-12-16 16:37:51 +01:00
2018-01-22 14:20:56 +01:00
2017-11-02 11:10:55 +01:00
2017-12-27 15:24:27 +01:00
2017-11-21 15:57:07 -08:00
2017-11-14 16:47:47 -08:00
2017-12-02 21:31:03 -05:00
2017-11-20 21:50:24 -10:00
2017-12-14 21:01:40 +02:00
2017-11-16 09:10:59 -08:00
2017-11-16 09:10:59 -08:00
2017-11-21 15:57:07 -08:00
2017-12-22 12:30:10 -08:00
2017-11-02 11:10:55 +01:00
2017-11-13 01:40:52 +01:00
2017-11-28 15:17:49 +01:00