bool
default !XEN_PRIVILEGED_GUEST
+config XEN_PRIVCMD
+ bool
+ depends on PROC_FS
+ default y
+
config XEN_BACKEND
tristate "Backend driver support"
default y
block devices to other guests via a high-performance shared-memory
interface.
+config XEN_XENBUS_DEV
+ bool
+ depends on PROC_FS
+ default y
+
config XEN_NETDEV_BACKEND
tristate "Network-device backend driver"
depends on XEN_BACKEND && NET
#define PAGES2KB(_p) ((_p)<<(PAGE_SHIFT-10))
+#ifdef CONFIG_PROC_FS
static struct proc_dir_entry *balloon_pde;
+#endif
static DECLARE_MUTEX(balloon_mutex);
return NOTIFY_DONE;
}
+#ifdef CONFIG_PROC_FS
static int balloon_write(struct file *file, const char __user *buffer,
unsigned long count, void *data)
{
*eof = 1;
return len;
}
+#endif
static struct notifier_block xenstore_notifier;
balloon_timer.data = 0;
balloon_timer.function = balloon_alarm;
+#ifdef CONFIG_PROC_FS
if ((balloon_pde = create_xen_proc_entry("balloon", 0644)) == NULL) {
WPRINTK("Unable to create /proc/xen/balloon.\n");
return -1;
balloon_pde->read_proc = balloon_read;
balloon_pde->write_proc = balloon_write;
+#endif
/* Initialise the balloon with excess memory space. */
for (pfn = xen_start_info->nr_pages; pfn < max_pfn; pfn++) {
-obj-y := privcmd.o
+obj-$(CONFIG_XEN_PRIVCMD) := privcmd.o
xenbus-objs += xenbus_comms.o
xenbus-objs += xenbus_xs.o
xenbus-objs += xenbus_probe.o
-xenbus-objs += xenbus_dev.o
+obj-$(CONFIG_XEN_XENBUS_DEV) += xenbus_dev.o
}
+#ifdef CONFIG_PROC_FS
static struct file_operations xsd_kva_fops;
static struct proc_dir_entry *xsd_kva_intf;
static struct proc_dir_entry *xsd_port_intf;
*eof = 1;
return len;
}
+#endif
static int __init xenbus_probe_init(void)
BUG_ON(err);
xen_start_info->store_evtchn = alloc_unbound.port;
+#ifdef CONFIG_PROC_FS
/* And finally publish the above info in /proc/xen */
xsd_kva_intf = create_xen_proc_entry("xsd_kva", 0600);
if (xsd_kva_intf) {
xsd_port_intf = create_xen_proc_entry("xsd_port", 0400);
if (xsd_port_intf)
xsd_port_intf->read_proc = xsd_port_read;
+#endif
} else
xenstored_ready = 1;