Re: [PATCH v2 1/1] nilfs2: add missing blkdev_issue_flush() to nilfs_sync_fs()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 08 Sep 2014 21:03:02 +0200, Andreas Rohner wrote:
> 
> Hi Ryusuke,
> 
> Sorry for the late response I was busy over the weekend.
> 
> On 2014-09-07 07:12, Ryusuke Konishi wrote:
>> - clear_nilfs_flushed() seems to be called more than necessary.
>>   Incomplete logs that the mount time recovery of nilfs doesn't
>>   salvage do not need to be flushed.  In this sense, it may be enough
>>   only for logs containing a super root and those for datasync
>>   nilfs_construct_dsync_segment() creates.
> 
> Yes you are right I will change that as well.
> 
> On the other hand it seems to me, that almost any file operation causes
> a super root to be written. Even if you use fdatasync(). If the i_mtime
> on the inode has to be changed, then NILFS_I_INODE_DIRTY is set and the
> fdatasync() turns into a normal sync(), which always writes a super
> root. Every write() to a file causes an update of i_mtime. I could only
> make fdatasync() work as intended with mmap(), but maybe I am missing
> something. So we may not save us a lot of updates by only updating the
> flag in case the log contains a super root...

Uum, this looks another problem. We need efficient fsync/fdatasync/
msync operation.  The above legacy implementation should be replaced
with some new ideas in which metadata update is handled more
efficiently and checkpoint creation is suppressed...

Ryusuke Konishi
--
To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Filesystem Development]     [Linux BTRFS]     [Linux CIFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux