Messages in this thread | | | Date | Thu, 20 Aug 2015 09:55:37 -0700 | From | Tejun Heo <> | Subject | Re: [PATCH block/for-linus] writeback: fix syncing of I_DIRTY_TIME inodes |
| |
Hello, Eryu. Thanks a lot for the trace.
So, this is from the end of the trace from the failed test.
... kworker/u8:1-1563 [002] 22016.987530: xfs_writepage: dev 253:6 ino 0xef64fe pgoff 0x9ff000 size 0xa00000 offset 0 length 0 delalloc 1 unwritten 0 kworker/2:1-49 [002] 22017.373595: xfs_setfilesize: dev 253:6 ino 0xef6504 isize 0xa00000 disize 0x0 offset 0x0 count 10481664 ...
Maybe I'm misunderstanding the code but all xfs_writepage() calls are from unbound workqueues - the writeback workers - while xfs_setfilesize() are from bound workqueues, so I wondered why that was and looked at the code and the setsize functions are run off of a separate work item which is queued from the end_bio callback and I can't tell who would be waiting for them. Dave, what am I missing?
Thanks.
-- tejun
| |