Mailing List Archive

Initialise grant tables via core_initcall so that it happens
# HG changeset patch
# User kaf24@firebug.cl.cam.ac.uk
# Node ID 4dbca1428acdb92c242a0d8dafb03158da230394
# Parent b54e981957ebd69c9b413df668d3a49908d13f23
Initialise grant tables via core_initcall so that it happens
suitably early during the boot process.

Signed-off-by: Keir Fraser <keir@xensource.com>

diff -r b54e981957eb -r 4dbca1428acd linux-2.6-xen-sparse/arch/xen/kernel/gnttab.c
--- a/linux-2.6-xen-sparse/arch/xen/kernel/gnttab.c Thu Dec 29 15:59:12 2005
+++ b/linux-2.6-xen-sparse/arch/xen/kernel/gnttab.c Thu Dec 29 16:37:08 2005
@@ -389,6 +389,30 @@
return -ENOSYS;
}

+static int __init
+gnttab_proc_init(void)
+{
+ /*
+ * /proc/xen/grant : used by libxc to access grant tables
+ */
+ if ((grant_pde = create_xen_proc_entry("grant", 0600)) == NULL) {
+ WPRINTK("Unable to create grant xen proc entry\n");
+ return -1;
+ }
+
+ grant_file_ops.read = grant_pde->proc_fops->read;
+ grant_file_ops.write = grant_pde->proc_fops->write;
+
+ grant_pde->proc_fops = &grant_file_ops;
+
+ grant_pde->read_proc = &grant_read;
+ grant_pde->write_proc = &grant_write;
+
+ return 0;
+}
+
+device_initcall(gnttab_proc_init);
+
#endif /* CONFIG_PROC_FS */

int
@@ -446,29 +470,11 @@
gnttab_free_count = NR_GRANT_ENTRIES - NR_RESERVED_ENTRIES;
gnttab_free_head = NR_RESERVED_ENTRIES;

-#ifdef CONFIG_PROC_FS
- /*
- * /proc/xen/grant : used by libxc to access grant tables
- */
- if ((grant_pde = create_xen_proc_entry("grant", 0600)) == NULL) {
- WPRINTK("Unable to create grant xen proc entry\n");
- return -1;
- }
-
- grant_file_ops.read = grant_pde->proc_fops->read;
- grant_file_ops.write = grant_pde->proc_fops->write;
-
- grant_pde->proc_fops = &grant_file_ops;
-
- grant_pde->read_proc = &grant_read;
- grant_pde->write_proc = &grant_write;
-#endif
-
printk("Grant table initialized\n");
return 0;
}

-__initcall(gnttab_init);
+core_initcall(gnttab_init);

/*
* Local variables:

_______________________________________________
Xen-changelog mailing list
Xen-changelog@lists.xensource.com
http://lists.xensource.com/xen-changelog