Commit 2d72fc00 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

kobject: convert /sys/hypervisor to use kobject_create



We don't need a kset here, a simple kobject will do just fine, so
dynamically create the kobject and use it.

We also rename hypervisor_subsys to hypervisor_kset to catch all users
of the variable.

Cc: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 881c6cfd
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -506,7 +506,7 @@ static int __init hypfs_init(void)
			goto fail_diag;
			goto fail_diag;
		}
		}
	}
	}
	s390_subsys.kobj.kset = &hypervisor_subsys;
	s390_subsys.kobj.parent = hypervisor_kobj;
	rc = subsystem_register(&s390_subsys);
	rc = subsystem_register(&s390_subsys);
	if (rc)
	if (rc)
		goto fail_sysfs;
		goto fail_sysfs;
+8 −4
Original line number Original line Diff line number Diff line
@@ -2,19 +2,23 @@
 * hypervisor.c - /sys/hypervisor subsystem.
 * hypervisor.c - /sys/hypervisor subsystem.
 *
 *
 * Copyright (C) IBM Corp. 2006
 * Copyright (C) IBM Corp. 2006
 * Copyright (C) 2007 Greg Kroah-Hartman <gregkh@suse.de>
 * Copyright (C) 2007 Novell Inc.
 *
 *
 * This file is released under the GPLv2
 * This file is released under the GPLv2
 */
 */


#include <linux/kobject.h>
#include <linux/kobject.h>
#include <linux/device.h>
#include <linux/device.h>

#include "base.h"
#include "base.h"


decl_subsys(hypervisor, NULL);
struct kobject *hypervisor_kobj;
EXPORT_SYMBOL_GPL(hypervisor_subsys);
EXPORT_SYMBOL_GPL(hypervisor_kobj);


int __init hypervisor_init(void)
int __init hypervisor_init(void)
{
{
	return subsystem_register(&hypervisor_subsys);
	hypervisor_kobj = kobject_create_and_add("hypervisor", NULL);
	if (!hypervisor_kobj)
		return -ENOMEM;
	return 0;
}
}
+2 −2
Original line number Original line Diff line number Diff line
@@ -196,8 +196,8 @@ struct kset _name##_subsys = { \


/* The global /sys/kernel/ kset for people to chain off of */
/* The global /sys/kernel/ kset for people to chain off of */
extern struct kset *kernel_kset;
extern struct kset *kernel_kset;
/* The global /sys/hypervisor/ subsystem  */
/* The global /sys/hypervisor/ kobject for people to chain off of */
extern struct kset hypervisor_subsys;
extern struct kobject *hypervisor_kobj;


extern int __must_check subsystem_register(struct kset *);
extern int __must_check subsystem_register(struct kset *);
extern void subsystem_unregister(struct kset *);
extern void subsystem_unregister(struct kset *);