A large part of xfs_sync_inodes is conditional on the SYNC_BDFLUSH which is never passed to it. This patch removes it and adds an assert that triggers in case some new code tries to pass SYNC_BDFLUSH
vfs_sync_worker calls with SYNC_BDFLUSH. xfssyncd can call this. I might be missing something if this is not used. Thanks, -Saradhi. [[HTML alternate version deleted]]
My eyes glazed over it too, but in xfs_syncsub as hch pointed out to me: if (flags & (SYNC_ATTR|SYNC_DELWRI)) { if (flags & SYNC_BDFLUSH) xfs_finish_reclaim_all(mp, 1); else error = xfs_sync_inodes(m
Ah, I see. It looks we don't use SYNC_BDFLUSH in xfs_sync_inodes. I believe we don't want to flush inodes from xfssync as inodes will be flushed by pdflush, memory cleaner threads. It looks like this
A large part of xfs_sync_inodes is conditional on the SYNC_BDFLUSH which is never passed to it. This patch removes it and adds an assert that triggers in case some new code tries to pass SYNC_BDFLUSH
vfs_sync_worker calls with SYNC_BDFLUSH. xfssyncd can call this. I might be missing something if this is not used. Thanks, -Saradhi. [[HTML alternate version deleted]]
My eyes glazed over it too, but in xfs_syncsub as hch pointed out to me: if (flags & (SYNC_ATTR|SYNC_DELWRI)) { if (flags & SYNC_BDFLUSH) xfs_finish_reclaim_all(mp, 1); else error = xfs_sync_inodes(m
Ah, I see. It looks we don't use SYNC_BDFLUSH in xfs_sync_inodes. I believe we don't want to flush inodes from xfssync as inodes will be flushed by pdflush, memory cleaner threads. It looks like this