http://forum.openvz.org/index.php?t=tree&goto=3123&#msg_3123 --- ./drivers/block/genhd.c.ora 2006-01-11 22:13:22.000000000 +0300 +++ ./drivers/block/genhd.c 2006-05-13 11:34:46.000000000 +0400 @@ -262,6 +262,8 @@ if (&sgp->kobj.entry == block_subsys.kset.list.next) seq_puts(part, "major minor #blocks name\n\n"); + if (!ve_is_super(get_exec_env())) + return 0; /* Don't show non-partitionable removeable devices or empty devices */ if (!get_capacity(sgp) || (sgp->minors == 1 && (sgp->flags & GENHD_FL_REMOVABLE))) --- ./kernel/veowner.c.ora 2006-01-11 22:13:23.000000000 +0300 +++ ./kernel/veowner.c 2006-05-13 11:36:31.000000000 +0400 @@ -98,6 +98,7 @@ "user_beancounters", "cmdline", "vmstat", + "partitions", NULL, }; char **p; --- ./mm/swapfile.c.ora 2006-01-11 22:13:24.000000000 +0300 +++ ./mm/swapfile.c 2006-05-13 11:40:53.000000000 +0400 @@ -1344,6 +1344,9 @@ if (v == swap_info) seq_puts(swap, "Filename\t\t\t\tType\t\tSize\tUsed\tPriority\n"); + if (!ve_is_super(get_exec_env())) + return 0; + file = ptr->swap_file; len = seq_path(swap, file->f_vfsmnt, file->f_dentry, " \t\n\\"); seq_printf(swap, "%*s%s\t%d\t%ld\t%d\n", @@ -1379,7 +1382,7 @@ { struct proc_dir_entry *entry; - entry = create_proc_entry("swaps", 0, NULL); + entry = create_proc_glob_entry("swaps", 0, NULL); if (entry) entry->proc_fops = &proc_swaps_operations; return 0;