summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2011-10-18 14:51:03 -0700
committerBrian Behlendorf <[email protected]>2011-10-18 15:49:31 -0700
commit6f2255ba8ac93a86ec217775e8f9fc145bc52b39 (patch)
tree7c49ff820bab9bc6565ae178887a61f57c2c647d
parent8d35c1499de42a1910ac1bb3a9c537ddc43c7d4d (diff)
Set mtime on symbolic links
Register the setattr/getattr callbacks for symlinks. Without these the generic inode_setattr() and generic_fillattr() functions will be used. In the setattr case this will only result in the inode being updated in memory, the dirty_inode callback would also normally run but none is registered for zfs. The straight forward fix is to set the setattr/getattr callbacks for symlinks so they are handled just like files and directories. Signed-off-by: Brian Behlendorf <[email protected]> Closes #412
-rw-r--r--module/zfs/zpl_inode.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/module/zfs/zpl_inode.c b/module/zfs/zpl_inode.c
index dbfe61ab9..17acf3711 100644
--- a/module/zfs/zpl_inode.c
+++ b/module/zfs/zpl_inode.c
@@ -354,6 +354,8 @@ const struct inode_operations zpl_symlink_inode_operations = {
.readlink = generic_readlink,
.follow_link = zpl_follow_link,
.put_link = zpl_put_link,
+ .setattr = zpl_setattr,
+ .getattr = zpl_getattr,
};
const struct inode_operations zpl_special_inode_operations = {