linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* xfs:  commit 6552321831dc "xfs: remove i_iolock and use i_rwsem in the VFS inode instead"  change causes hang
@ 2017-01-08 14:48 Mimi Zohar
  2017-01-08 14:52 ` Christoph Hellwig
  0 siblings, 1 reply; 19+ messages in thread
From: Mimi Zohar @ 2017-01-08 14:48 UTC (permalink / raw)
  To: linux-xfs
  Cc: Christoph Hellwig, Dave Chinner, linux-fsdevel, linux-kernel, Al Viro

Validation of a file's signature/hash, calculating a file's hash, or
simply audit logging a file's hash prior to use, with commit
6552321831dc "xfs: remove i_iolock and use i_rwsem in the VFS inode
instead" cause the system to hang.

IMA takes the i_rwsem (fomerly i_mutex) before reading the file to
synchronize calculating the file hash and validating the file's
hash/signature stored as security.ima xattr.  (In fix mode, it writes
the file hash as the security.ima.)  Prior to commit 6552321831dc "xfs:
remove i_iolock and use i_rwsem in the VFS inode instead" used an XFS
specific lock, not i_rwsem.

INFO: task plymouthd:3106 blocked for more than 120 seconds.
      Not tainted 4.10.0-rc2 #3
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
plymouthd       D11400  3106      1 0x00040080
Call Trace:
[c0000000f11df320] [c0000000ffde2700] 0xc0000000ffde2700 (unreliable)
[c0000000f11df4f0] [c00000000001c2f0] __switch_to+0x2c0/0x450
[c0000000f11df550] [c0000000008a8a24] __schedule+0x304/0x950
[c0000000f11df5f0] [c0000000008a90b8] schedule+0x48/0xc0
[c0000000f11df620] [c0000000008b0e64] rwsem_down_read_failed+0x144/0x1e0
[c0000000f11df6b0] [c0000000008afa78] down_read+0x78/0x80
[c0000000f11df6e0] [c0000000004d0ef8] xfs_ilock+0x198/0x1b0
[c0000000f11df720] [c0000000004be758] xfs_file_buffered_aio_read+0x58/0x140
[c0000000f11df770] [c0000000004be8f8] xfs_file_read_iter+0xb8/0x150
[c0000000f11df7c0] [c000000000306948] __vfs_read+0x138/0x1b0
[c0000000f11df860] [c00000000055e4a0] integrity_kernel_read+0x70/0xb0
[c0000000f11df8b0] [c000000000560fc0] ima_calc_file_hash+0x3a0/0x770
[c0000000f11dfa60] [c000000000561f2c] ima_collect_measurement+0x1dc/0x210
[c0000000f11dfb10] [c00000000055feec] process_measurement.isra.0+0x39c/0x510
[c0000000f11dfb90] [c00000000031f1b4] path_openat+0x764/0x14a0
[c0000000f11dfc90] [c00000000032196c] do_filp_open+0xfc/0x170
[c0000000f11dfdc0] [c000000000305c4c] do_sys_open+0x1ac/0x2d0
[c0000000f11dfe30] [c00000000000b860] system_call+0x38/0xfc

Mimi

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2017-01-10 16:22 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-08 14:48 xfs: commit 6552321831dc "xfs: remove i_iolock and use i_rwsem in the VFS inode instead" change causes hang Mimi Zohar
2017-01-08 14:52 ` Christoph Hellwig
2017-01-08 15:03   ` Mimi Zohar
2017-01-08 15:14     ` Christoph Hellwig
2017-01-08 15:31       ` Mimi Zohar
2017-01-08 15:37         ` Christoph Hellwig
2017-01-08 16:38           ` Mimi Zohar
2017-01-08 16:43             ` Christoph Hellwig
2017-01-08 17:59   ` James Bottomley
2017-01-08 18:18     ` Christoph Hellwig
2017-01-08 18:57       ` James Bottomley
2017-01-08 19:09         ` Christoph Hellwig
2017-01-08 19:26           ` Al Viro
2017-01-08 20:10             ` Mimi Zohar
2017-01-08 19:39           ` Mimi Zohar
2017-01-09 19:44           ` Jeff Layton
2017-01-10  2:54             ` Mimi Zohar
2017-01-10 16:22               ` Jeff Layton
2017-01-08 19:16         ` Mimi Zohar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).