diff -NurpP --minimal linux-2.6.11-vs1.9.5-rc2/kernel/vserver/proc.c linux-2.6.11-vs1.9.5-rc2.1/kernel/vserver/proc.c --- linux-2.6.11-vs1.9.5-rc2/kernel/vserver/proc.c 2005-03-02 12:44:41 +0100 +++ linux-2.6.11-vs1.9.5-rc2.1/kernel/vserver/proc.c 2005-03-03 21:36:02 +0100 @@ -31,6 +31,7 @@ #include "cvirt_proc.h" #include "limit_proc.h" #include "sched_proc.h" +#include "vci_config.h" static struct proc_dir_entry *proc_virtual; @@ -62,9 +63,11 @@ static int proc_virtual_info(int vid, ch return sprintf(buffer, "VCIVersion:\t%04x:%04x\n" "VCISyscall:\t%d\n" + "VCIKernel:\t%08x\n" ,VCI_VERSION >> 16 ,VCI_VERSION & 0xFFFF ,__NR_vserver + ,vci_kernel_config() ); } diff -NurpP --minimal linux-2.6.11-vs1.9.5-rc2/kernel/vserver/vci_config.h linux-2.6.11-vs1.9.5-rc2.1/kernel/vserver/vci_config.h --- linux-2.6.11-vs1.9.5-rc2/kernel/vserver/vci_config.h 1970-01-01 01:00:00 +0100 +++ linux-2.6.11-vs1.9.5-rc2.1/kernel/vserver/vci_config.h 2005-03-03 21:45:56 +0100 @@ -0,0 +1,63 @@ + +enum { + VCI_KCBIT_LEGACY = 1, + VCI_KCBIT_LEGACYNET, + VCI_KCBIT_NGNET, + + VCI_KCBIT_PROC_SECURE, + VCI_KCBIT_HARDCPU, + VCI_KCBIT_HARDCPU_IDLE, + + VCI_KCBIT_DEBUG = 16, + VCI_KCBIT_HISTORY = 20, + VCI_KCBIT_TAGXID = 24, +}; + + +static inline uint32_t vci_kernel_config(void) +{ + return + /* various legacy options */ +#ifdef CONFIG_VSERVER_LEGACY + (1 << VCI_KCBIT_LEGACY) | + (1 << VCI_KCBIT_LEGACYNET) | +#endif + + /* configured features */ +#ifdef CONFIG_VSERVER_PROC_SECURE + (1 << VCI_KCBIT_PROC_SECURE) | +#endif +#ifdef CONFIG_VSERVER_HARDCPU + (1 << VCI_KCBIT_HARDCPU) | +#endif +#ifdef CONFIG_VSERVER_HARDCPU_IDLE + (1 << VCI_KCBIT_HARDCPU_IDLE) | +#endif + + /* debug options */ +#ifdef CONFIG_VSERVER_DEBUG + (1 << VCI_KCBIT_DEBUG) | +#endif +#ifdef CONFIG_VSERVER_HISTORY + (1 << VCI_KCBIT_HISTORY) | +#endif + + /* inode xid tagging */ +#if defined(CONFIG_INOXID_NONE) + (0 << VCI_KCBIT_TAGXID) | +#elif defined(CONFIG_INOXID_UID16) + (1 << VCI_KCBIT_TAGXID) | +#elif defined(CONFIG_INOXID_GID16) + (2 << VCI_KCBIT_TAGXID) | +#elif defined(CONFIG_INOXID_UGID24) + (3 << VCI_KCBIT_TAGXID) | +#elif defined(CONFIG_INOXID_INTERN) + (4 << VCI_KCBIT_TAGXID) | +#elif defined(CONFIG_INOXID_RUNTIME) + (5 << VCI_KCBIT_TAGXID) | +#else + (7 << VCI_KCBIT_TAGXID) | +#endif + 0; +} +