This commit was manufactured by cvs2svn to create tag
[linux-2.6.git] / fs / proc / generic.c
index d2c88eb..474bee8 100644 (file)
@@ -319,21 +319,14 @@ static void release_inode_number(unsigned int inum)
        spin_unlock(&proc_inum_lock);
 }
 
-static int
-proc_readlink(struct dentry *dentry, char __user *buffer, int buflen)
-{
-       char *s = PDE(dentry->d_inode)->data;
-       return vfs_readlink(dentry, buffer, buflen, s);
-}
-
 static int proc_follow_link(struct dentry *dentry, struct nameidata *nd)
 {
-       char *s = PDE(dentry->d_inode)->data;
-       return vfs_follow_link(nd, s);
+       nd_set_link(nd, PDE(dentry->d_inode)->data);
+       return 0;
 }
 
 static struct inode_operations proc_link_inode_operations = {
-       .readlink       = proc_readlink,
+       .readlink       = generic_readlink,
        .follow_link    = proc_follow_link,
 };
 
@@ -682,7 +675,7 @@ void remove_proc_entry(const char *name, struct proc_dir_entry *parent)
                        parent->nlink--;
                proc_kill_inodes(de);
                de->nlink = 0;
-               WARN_ON(de->subdir);
+               BUG_ON(de->subdir);
                if (!atomic_read(&de->count))
                        free_proc_entry(de);
                else {