Rex Zhang
e23d6ba502
dmaengine: idxd: Move dma_free_coherent() out of spinlocked context
...
[ Upstream commit e271c0ba3f919c48e90c64b703538fbb7865cb63 ]
Task may be rescheduled within dma_free_coherent(). So dma_free_coherent()
can't be called between spin_lock() and spin_unlock() to avoid Call Trace:
Call Trace:
<TASK>
dump_stack_lvl+0x37/0x50
__might_resched+0x16a/0x1c0
vunmap+0x2c/0x70
__iommu_dma_free+0x96/0x100
idxd_device_evl_free+0xd5/0x100 [idxd]
device_release_driver_internal+0x197/0x200
unbind_store+0xa1/0xb0
kernfs_fop_write_iter+0x120/0x1c0
vfs_write+0x2d3/0x400
ksys_write+0x63/0xe0
do_syscall_64+0x44/0xa0
entry_SYSCALL_64_after_hwframe+0x6e/0xd8
Move it out of the context.
Fixes: 244da66cda35 ("dmaengine: idxd: setup event log configuration")
Signed-off-by: Rex Zhang <rex.zhang@intel.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Fenghua Yu <fenghua.yu@intel.com>
Link: https://lore.kernel.org/r/20231212022158.358619-2-rex.zhang@intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-31 16:18:47 -08:00
..
2023-08-01 23:51:27 +05:30
2023-08-01 23:51:27 +05:30
2023-08-01 23:51:27 +05:30
2023-05-24 12:20:45 +05:30
2023-05-30 18:58:43 -05:00
2022-09-04 22:49:35 +05:30
2024-01-31 16:18:47 -08:00
2023-08-21 18:39:25 +05:30
2023-08-21 11:13:09 +05:30
2023-10-04 19:26:36 +05:30
2023-08-01 23:51:27 +05:30
2023-02-24 17:18:54 -08:00
2023-08-01 23:51:27 +05:30
2023-02-16 18:45:48 +05:30
2023-08-01 23:51:27 +05:30
2024-01-10 17:16:57 +01:00
2023-09-03 10:49:42 -07:00
2021-08-06 21:48:11 +05:30
2022-07-06 22:00:06 +05:30
2022-09-29 12:24:16 +05:30
2023-08-01 23:51:27 +05:30
2023-08-01 23:51:27 +05:30
2023-05-19 16:54:04 +05:30
2023-01-18 22:16:47 +05:30
2023-08-01 23:51:27 +05:30
2023-05-24 12:24:32 +05:30
2023-08-01 23:51:27 +05:30
2024-01-31 16:18:47 -08:00
2021-10-25 09:42:56 +05:30
2022-10-11 17:42:58 -06:00
2023-08-02 00:02:51 +05:30
2023-08-01 23:51:27 +05:30
2023-12-20 17:02:02 +01:00
2023-09-28 16:50:34 +05:30
2024-01-31 16:18:47 -08:00
2023-08-01 23:51:27 +05:30
2023-08-01 23:51:27 +05:30
2022-09-04 22:42:35 +05:30
2023-02-16 18:45:48 +05:30
2023-08-01 23:51:27 +05:30
2023-08-01 23:51:27 +05:30
2023-08-01 23:51:27 +05:30
2021-04-12 17:14:53 +05:30
2023-09-03 10:49:42 -07:00
2023-08-01 23:51:27 +05:30
2023-08-22 20:11:02 +05:30
2023-09-03 10:49:42 -07:00
2021-10-25 12:12:13 +05:30
2020-12-29 10:08:00 +05:30
2023-01-18 22:16:47 +05:30
2023-02-24 17:18:54 -08:00
2023-01-18 22:16:47 +05:30
2023-08-01 23:51:27 +05:30
2023-05-03 11:11:56 -07:00
2020-11-24 23:02:20 +05:30
2023-08-01 23:51:27 +05:30
2023-08-01 23:51:27 +05:30
2023-03-17 23:11:42 +05:30
2023-09-03 10:49:42 -07:00
2022-01-08 22:16:44 +05:30
2023-08-07 00:01:41 +05:30
2023-05-24 12:24:32 +05:30
2023-11-20 11:59:26 +01:00
2021-10-26 10:55:07 +05:30
2023-08-01 23:51:27 +05:30
2021-12-13 13:18:48 +05:30
2023-05-16 23:00:19 +05:30
2023-10-09 10:56:51 +05:30
2023-05-16 23:00:19 +05:30
2023-12-20 17:02:02 +01:00
2023-08-01 23:51:27 +05:30
2023-11-28 17:20:05 +00:00
2023-01-18 22:16:47 +05:30
2023-08-01 23:51:27 +05:30
2023-08-01 23:51:27 +05:30
2023-08-01 23:51:27 +05:30
2023-08-01 23:51:27 +05:30
2022-01-03 17:49:37 +05:30
2023-08-01 23:51:27 +05:30