Chengfeng Ye
35c63d366f
atm: solos-pci: Fix potential deadlock on &cli_queue_lock
...
[ Upstream commit d5dba32b8f6cb39be708b726044ba30dbc088b30 ]
As &card->cli_queue_lock is acquired under softirq context along the
following call chain from solos_bh(), other acquisition of the same
lock inside process context should disable at least bh to avoid double
lock.
<deadlock #1>
console_show()
--> spin_lock(&card->cli_queue_lock)
<interrupt>
--> solos_bh()
--> spin_lock(&card->cli_queue_lock)
This flaw was found by an experimental static analysis tool I am
developing for irq-related deadlock.
To prevent the potential deadlock, the patch uses spin_lock_bh()
on the card->cli_queue_lock under process context code consistently
to prevent the possible deadlock scenario.
Fixes: 9c54004ea7 ("atm: Driver for Solos PCI ADSL2+ card.")
Signed-off-by: Chengfeng Ye <dg573847474@gmail.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
Signed-off-by: Sasha Levin <sashal@kernel.org >
2023-12-20 17:00:16 +01:00
..
2023-01-24 07:24:37 +01:00
2023-12-13 18:39:17 +01:00
2023-09-13 09:42:56 +02:00
2023-12-13 18:39:22 +01:00
2023-12-08 08:51:14 +01:00
2023-12-20 17:00:16 +01:00
2023-12-08 08:51:16 +01:00
2023-12-13 18:39:28 +01:00
2023-11-28 17:07:02 +00:00
2023-11-28 17:07:17 +00:00
2023-10-06 14:56:48 +02:00
2023-11-20 11:52:04 +01:00
2023-11-28 17:07:16 +00:00
2023-11-28 17:06:55 +00:00
2023-01-24 07:24:35 +01:00
2023-10-19 23:08:58 +02:00
2023-12-08 08:51:19 +01:00
2023-09-13 09:42:48 +02:00
2023-11-28 17:07:00 +00:00
2023-11-28 17:07:23 +00:00
2023-07-19 16:21:43 +02:00
2023-11-20 11:51:54 +01:00
2022-12-31 13:32:38 +01:00
2023-11-28 17:07:13 +00:00
2023-12-08 08:51:15 +01:00
2023-09-13 09:42:45 +02:00
2023-09-13 09:42:53 +02:00
2023-12-08 08:51:14 +01:00
2023-11-28 17:07:12 +00:00
2023-05-11 23:03:27 +09:00
2023-09-13 09:42:54 +02:00
2023-12-13 18:39:24 +01:00
2023-12-13 18:39:30 +01:00
2023-12-20 17:00:15 +01:00
2022-12-31 13:32:45 +01:00
2023-11-20 11:51:58 +01:00
2023-09-13 09:42:59 +02:00
2023-12-13 18:39:14 +01:00
2023-09-19 12:28:05 +02:00
2023-12-13 18:39:22 +01:00
2023-12-13 18:39:03 +01:00
2023-11-28 17:07:17 +00:00
2023-10-10 22:00:44 +02:00
2023-11-28 17:07:01 +00:00
2023-12-13 18:39:15 +01:00
2023-12-08 08:51:16 +01:00
2023-11-20 11:52:12 +01:00
2023-12-13 18:39:17 +01:00
2023-11-08 14:10:57 +01:00
2023-08-16 18:27:26 +02:00
2023-11-20 11:52:08 +01:00
2023-05-11 23:03:31 +09:00
2023-09-19 12:27:58 +02:00
2023-11-28 17:07:13 +00:00
2023-12-13 18:39:21 +01:00
2023-12-03 07:32:10 +01:00
2023-07-19 16:21:24 +02:00
2023-07-19 16:21:08 +02:00
2023-05-24 17:32:37 +01:00
2023-11-28 17:07:12 +00:00
2023-12-13 18:39:23 +01:00
2023-12-08 08:51:19 +01:00
2023-11-28 17:07:14 +00:00
2023-12-20 17:00:16 +01:00
2023-06-28 11:12:36 +02:00
2023-09-13 09:43:02 +02:00
2023-07-05 18:27:37 +01:00
2023-11-20 11:52:05 +01:00
2023-12-13 18:39:17 +01:00
2023-11-02 09:35:31 +01:00
2023-12-13 18:39:05 +01:00
2023-09-13 09:42:28 +02:00
2023-11-28 17:07:14 +00:00
2023-12-13 18:39:26 +01:00
2023-12-08 08:51:18 +01:00
2023-11-20 11:52:13 +01:00
2023-11-20 11:52:01 +01:00
2023-10-25 12:03:16 +02:00
2023-12-08 08:51:13 +01:00
2023-12-13 18:39:20 +01:00
2022-12-31 13:31:56 +01:00
2023-11-08 14:11:02 +01:00
2023-12-13 18:39:21 +01:00
2023-11-28 17:07:05 +00:00
2023-11-20 11:52:15 +01:00
2022-12-31 13:32:00 +01:00
2023-11-20 11:51:56 +01:00
2023-05-24 17:32:53 +01:00
2023-02-01 08:34:05 +01:00
2023-09-13 09:42:58 +02:00
2023-11-20 11:52:13 +01:00
2023-12-03 07:32:11 +01:00
2023-12-13 18:39:16 +01:00
2023-11-28 17:07:16 +00:00
2023-11-28 17:07:01 +00:00
2023-12-08 08:51:19 +01:00
2023-05-11 23:03:31 +09:00
2023-11-20 11:52:14 +01:00
2023-10-10 22:00:41 +02:00
2023-12-13 18:39:12 +01:00
2023-11-20 11:51:54 +01:00
2023-11-28 17:07:01 +00:00
2023-12-13 18:39:28 +01:00
2023-11-20 11:52:07 +01:00
2022-12-31 13:32:38 +01:00
2023-12-13 18:39:28 +01:00
2023-12-13 18:39:03 +01:00
2023-10-06 14:56:45 +02:00
2023-11-28 17:07:04 +00:00
2023-12-08 08:51:19 +01:00
2023-11-20 11:52:13 +01:00
2023-11-02 09:35:23 +01:00
2023-07-19 16:21:48 +02:00
2023-11-28 17:07:18 +00:00
2023-12-08 08:51:20 +01:00