Bob Peterson b897da780f gfs2: use i_lock spin_lock for inode qadata
[ Upstream commit 5fcff61eea9efd1f4b60e89d2d686b5feaea100f ]

Before this patch, functions gfs2_qa_get and _put used the i_rw_mutex to
prevent simultaneous access to its i_qadata. But i_rw_mutex is now used
for many other things, including iomap_begin and end, which causes a
conflict according to lockdep. We cannot just remove the lock since
simultaneous opens (gfs2_open -> gfs2_open_common -> gfs2_qa_get) can
then stomp on each others values for i_qadata.

This patch solves the conflict by using the i_lock spin_lock in the inode
to prevent simultaneous access.

Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-06-09 10:22:40 +02:00
..
2019-07-03 14:45:18 +02:00
2021-06-29 10:56:51 +02:00
2021-06-29 10:56:51 +02:00
2022-05-01 17:22:30 +02:00
2022-04-08 14:24:10 +02:00
2021-04-29 10:33:35 -07:00
2021-08-19 12:31:17 -05:00
2022-04-08 14:24:10 +02:00
2022-04-08 14:24:10 +02:00
2021-04-08 15:07:21 +02:00