Hi Dave,

Sorry for the delay, took a while to poke around the code to figure
out possible ways it would get done (and what the right structure was).

On Tue, 6 Jan 2015 07:41:00 PM David Sterba wrote:

> Set the otime in btrfs_new_inode after the call to fill_inode_item.

Hmm, so something like this then?

Unfortunately I won't have a test system to try this on for a little while.


diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index e687bb0..60bcc72 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -5835,6 +5835,11 @@ static struct inode *btrfs_new_inode(struct 
btrfs_trans_handle *trans,
                             sizeof(*inode_item));
        fill_inode_item(trans, path->nodes[0], inode_item, inode);
 
+       /*
+        * Set the creation time on the inode.
+        */
+       btrfs_set_stack_timespec_sec( &inode.otime, cur_time.tv_sec );
+
        if (name) {
                ref = btrfs_item_ptr(path->nodes[0], path->slots[0] + 1,
                                     struct btrfs_inode_ref);


-- 
 Chris Samuel  :  http://www.csamuel.org/  :  Melbourne, VIC


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

Reply via email to