--- /dev/null
+diff --git a/kernel/vserver/context.c b/kernel/vserver/context.c
+index 4b49403..b0e2bd4 100644
+--- a/kernel/vserver/context.c
++++ b/kernel/vserver/context.c
+@@ -433,7 +433,7 @@ int get_xid_list(int index, unsigned int *xids, int size)
+ int hindex, nr_xids = 0;
+
+ /* only show current and children */
+- if (!vx_check(0, VS_ADMIN | VS_WATCH)) {
++ if (!vx_check(0, VS_ADMIN | VS_WATCH) && vx_flags(VXF_HIDE_VINFO, 0)) {
+ if (index > 0)
+ return 0;
+ xids[nr_xids] = vx_current_xid();
+diff --git a/kernel/vserver/network.c b/kernel/vserver/network.c
+index 3f5a766..a374522 100644
+--- a/kernel/vserver/network.c
++++ b/kernel/vserver/network.c
+@@ -392,7 +392,7 @@ int get_nid_list(int index, unsigned int *nids, int size)
+ int hindex, nr_nids = 0;
+
+ /* only show current and children */
+- if (!nx_check(0, VS_ADMIN | VS_WATCH)) {
++ if (!nx_check(0, VS_ADMIN | VS_WATCH) && vx_flags(VXF_HIDE_VINFO, 0)) {
+ if (index > 0)
+ return 0;
+ nids[nr_nids] = nx_current_nid();