aboutsummaryrefslogtreecommitdiffstats
path: root/net/unix/af_unix.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/unix/af_unix.c')
-rw-r--r--net/unix/af_unix.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
index 8b8f5e6d20bc..5266ea7b922b 100644
--- a/net/unix/af_unix.c
+++ b/net/unix/af_unix.c
@@ -305,7 +305,7 @@ static struct sock *unix_find_socket_byinode(struct inode *i)
305 &unix_socket_table[i->i_ino & (UNIX_HASH_SIZE - 1)]) { 305 &unix_socket_table[i->i_ino & (UNIX_HASH_SIZE - 1)]) {
306 struct dentry *dentry = unix_sk(s)->path.dentry; 306 struct dentry *dentry = unix_sk(s)->path.dentry;
307 307
308 if (dentry && dentry->d_inode == i) { 308 if (dentry && d_backing_inode(dentry) == i) {
309 sock_hold(s); 309 sock_hold(s);
310 goto found; 310 goto found;
311 } 311 }
@@ -778,7 +778,7 @@ static struct sock *unix_find_other(struct net *net,
778 err = kern_path(sunname->sun_path, LOOKUP_FOLLOW, &path); 778 err = kern_path(sunname->sun_path, LOOKUP_FOLLOW, &path);
779 if (err) 779 if (err)
780 goto fail; 780 goto fail;
781 inode = path.dentry->d_inode; 781 inode = d_backing_inode(path.dentry);
782 err = inode_permission(inode, MAY_WRITE); 782 err = inode_permission(inode, MAY_WRITE);
783 if (err) 783 if (err)
784 goto put_fail; 784 goto put_fail;
@@ -905,7 +905,7 @@ static int unix_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
905 goto out_up; 905 goto out_up;
906 } 906 }
907 addr->hash = UNIX_HASH_SIZE; 907 addr->hash = UNIX_HASH_SIZE;
908 hash = path.dentry->d_inode->i_ino & (UNIX_HASH_SIZE-1); 908 hash = d_backing_inode(path.dentry)->i_ino & (UNIX_HASH_SIZE-1);
909 spin_lock(&unix_table_lock); 909 spin_lock(&unix_table_lock);
910 u->path = path; 910 u->path = path;
911 list = &unix_socket_table[hash]; 911 list = &unix_socket_table[hash];