diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2019-05-07 20:50:27 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-05-07 20:50:27 -0700 |
commit | 149e703cb8bfcbdae46140b108bb6f7d2407df8f (patch) | |
tree | 6fdea7cdd4fb54a272cb7dc3c46cb9f2b84059e9 /fs/libfs.c | |
parent | d897166d8598e362a31d79dfd9a1e2eedb9ac85c (diff) | |
parent | 6ee9706aa22e026f438caabb2982e5f78de2c82c (diff) | |
download | linux-149e703cb8bfcbdae46140b108bb6f7d2407df8f.tar.bz2 |
Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull misc vfs updates from Al Viro:
"Assorted stuff, with no common topic whatsoever..."
* 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
libfs: document simple_get_link()
Documentation/filesystems/Locking: fix ->get_link() prototype
Documentation/filesystems/vfs.txt: document how ->i_link works
Documentation/filesystems/vfs.txt: remove bogus "Last updated" date
fs: use timespec64 in relatime_need_update
fs/block_dev.c: remove unused include
Diffstat (limited to 'fs/libfs.c')
-rw-r--r-- | fs/libfs.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/fs/libfs.c b/fs/libfs.c index 9efb647917e0..4b59b1816efb 100644 --- a/fs/libfs.c +++ b/fs/libfs.c @@ -1169,6 +1169,20 @@ simple_nosetlease(struct file *filp, long arg, struct file_lock **flp, } EXPORT_SYMBOL(simple_nosetlease); +/** + * simple_get_link - generic helper to get the target of "fast" symlinks + * @dentry: not used here + * @inode: the symlink inode + * @done: not used here + * + * Generic helper for filesystems to use for symlink inodes where a pointer to + * the symlink target is stored in ->i_link. NOTE: this isn't normally called, + * since as an optimization the path lookup code uses any non-NULL ->i_link + * directly, without calling ->get_link(). But ->get_link() still must be set, + * to mark the inode_operations as being for a symlink. + * + * Return: the symlink target + */ const char *simple_get_link(struct dentry *dentry, struct inode *inode, struct delayed_call *done) { |