|
@@ -353,32 +353,6 @@ static void xen_properties_destroy(void)
|
|
|
sysfs_remove_group(hypervisor_kobj, &xen_properties_group);
|
|
|
}
|
|
|
|
|
|
-#ifdef CONFIG_KEXEC
|
|
|
-
|
|
|
-extern size_t vmcoreinfo_size_xen;
|
|
|
-extern unsigned long paddr_vmcoreinfo_xen;
|
|
|
-
|
|
|
-static ssize_t vmcoreinfo_show(struct hyp_sysfs_attr *attr, char *page)
|
|
|
-{
|
|
|
- return sprintf(page, "%lx %zx\n",
|
|
|
- paddr_vmcoreinfo_xen, vmcoreinfo_size_xen);
|
|
|
-}
|
|
|
-
|
|
|
-HYPERVISOR_ATTR_RO(vmcoreinfo);
|
|
|
-
|
|
|
-static int __init xen_sysfs_vmcoreinfo_init(void)
|
|
|
-{
|
|
|
- return sysfs_create_file(hypervisor_kobj,
|
|
|
- &vmcoreinfo_attr.attr);
|
|
|
-}
|
|
|
-
|
|
|
-static void xen_sysfs_vmcoreinfo_destroy(void)
|
|
|
-{
|
|
|
- sysfs_remove_file(hypervisor_kobj, &vmcoreinfo_attr.attr);
|
|
|
-}
|
|
|
-
|
|
|
-#endif
|
|
|
-
|
|
|
static int __init hyper_sysfs_init(void)
|
|
|
{
|
|
|
int ret;
|
|
@@ -401,20 +375,9 @@ static int __init hyper_sysfs_init(void)
|
|
|
ret = xen_properties_init();
|
|
|
if (ret)
|
|
|
goto prop_out;
|
|
|
-#ifdef CONFIG_KEXEC
|
|
|
- if (vmcoreinfo_size_xen != 0) {
|
|
|
- ret = xen_sysfs_vmcoreinfo_init();
|
|
|
- if (ret)
|
|
|
- goto vmcoreinfo_out;
|
|
|
- }
|
|
|
-#endif
|
|
|
|
|
|
goto out;
|
|
|
|
|
|
-#ifdef CONFIG_KEXEC
|
|
|
-vmcoreinfo_out:
|
|
|
-#endif
|
|
|
- xen_properties_destroy();
|
|
|
prop_out:
|
|
|
xen_sysfs_uuid_destroy();
|
|
|
uuid_out:
|
|
@@ -429,10 +392,6 @@ out:
|
|
|
|
|
|
static void __exit hyper_sysfs_exit(void)
|
|
|
{
|
|
|
-#ifdef CONFIG_KEXEC
|
|
|
- if (vmcoreinfo_size_xen != 0)
|
|
|
- xen_sysfs_vmcoreinfo_destroy();
|
|
|
-#endif
|
|
|
xen_properties_destroy();
|
|
|
xen_compilation_destroy();
|
|
|
xen_sysfs_uuid_destroy();
|