Commit 0511fdb4 authored by Al Viro's avatar Al Viro

cifs_get_link(): bail out in unsafe case

->d_revalidate() bails out there, anyway.  It's not enough
to prevent getting into ->get_link() in RCU mode, but that
could happen only in a very contrieved setup.  Not worth
trying to do anything fancy here unless ->d_revalidate()
stops kicking out of RCU mode at least in some cases.
Reviewed-by: default avatarChristian Brauner <brauner@kernel.org>
Acked-by: default avatarMiklos Szeredi <mszeredi@redhat.com>
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 053fc4f7
...@@ -1172,6 +1172,9 @@ const char *cifs_get_link(struct dentry *dentry, struct inode *inode, ...@@ -1172,6 +1172,9 @@ const char *cifs_get_link(struct dentry *dentry, struct inode *inode,
{ {
char *target_path; char *target_path;
if (!dentry)
return ERR_PTR(-ECHILD);
target_path = kmalloc(PATH_MAX, GFP_KERNEL); target_path = kmalloc(PATH_MAX, GFP_KERNEL);
if (!target_path) if (!target_path)
return ERR_PTR(-ENOMEM); return ERR_PTR(-ENOMEM);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment