diff -NurpP --minimal linux-2.6.19.3-vs2.2.0-rc13.2/kernel/vserver/proc.c linux-2.6.19.3-vs2.2.0-rc13.3/kernel/vserver/proc.c --- linux-2.6.19.3-vs2.2.0-rc13.2/kernel/vserver/proc.c 2007-02-14 23:37:31 +0100 +++ linux-2.6.19.3-vs2.2.0-rc13.3/kernel/vserver/proc.c 2007-02-21 18:06:16 +0100 @@ -851,6 +851,15 @@ out: return 0; } +static int proc_virtual_getattr(struct vfsmount *mnt, + struct dentry *dentry, struct kstat *stat) +{ + struct inode *inode = dentry->d_inode; + + generic_fillattr(inode, stat); + stat->nlink = 2 + atomic_read(&vx_global_cactive); + return 0; +} static struct file_operations proc_virtual_dir_operations = { .read = generic_read_dir, @@ -858,6 +867,7 @@ static struct file_operations proc_virtu }; static struct inode_operations proc_virtual_dir_inode_operations = { + .getattr = proc_virtual_getattr, .lookup = proc_virtual_lookup, }; @@ -924,6 +934,15 @@ out: return 0; } +static int proc_virtnet_getattr(struct vfsmount *mnt, + struct dentry *dentry, struct kstat *stat) +{ + struct inode *inode = dentry->d_inode; + + generic_fillattr(inode, stat); + stat->nlink = 2 + atomic_read(&nx_global_cactive); + return 0; +} static struct file_operations proc_virtnet_dir_operations = { .read = generic_read_dir, @@ -931,6 +950,7 @@ static struct file_operations proc_virtn }; static struct inode_operations proc_virtnet_dir_inode_operations = { + .getattr = proc_virtnet_getattr, .lookup = proc_virtnet_lookup, };