From: Greg KH <gregkh@suse.de>
To: linux-kernel@vger.kernel.org
Cc: greg@kroah.com
Subject: [RFC] kobject and kset core changes and cleanups
Date: Fri, 2 Nov 2007 16:57:58 -0700 [thread overview]
Message-ID: <20071102235758.GA9803@kroah.com> (raw)
So, I go on vacation for a week or so and come back to an overflowing
inbox. Instead of trying to wade through all of that, I decide to
finish up the work Kay and I had started on cleaning up the kset core
code.
Here's a large patch series that is in my tree and should be for 2.6.25.
It does quite a few things:
- lots of struct kset work and cleanup. It's much simpler now
and will be documented while I still remember what is going
one...
- almost all (only 5 left) struct kset are dynamically created
with the new function call, kset_create_and_register(). This
fixes up a lot of issues with static kobjects in structures
and other messy things like that.
- struct bus_type is now split into two, a static and a dynamic
part. The dynamic part is under control of the driver core,
and handles the ksets. The static part is under control of
the bus that defined it.
- decl_subsys() is now gone and buried, good riddance
- subsys_attribute is now gone and replaced with:
- kobj_attribute is now availble to make attributes for kobjects
MUCH simpler than ever before. I've cleaned up some portions
of the kernel, and all older users of subsys_attribute have
been fixed. This takes away one of the biggest complaints
about dealing with "raw" kobjects.
- firmware subsystem has been all but removed as it was
pointless.
I'm posting the patches here so that people can take a look at them and
not be surprised when they go in to 2.6.25 in a few months and show up
in the next -mm releases.
One note, the efivars sysfs file removal patch is incorrect, and I'll be
fixing that up properly, so Matt, don't worry, I haven't forgotten :)
And hey, with all this work, we ended up removing more code than we
added, always a very good thing.
Now, on to face that scary inbox...
thanks,
greg k-h
---------------
Documentation/vm/slabinfo.c | 2 +-
Documentation/vm/slub.txt | 2 +-
arch/arm/mach-omap1/pm.c | 23 ++---
arch/powerpc/platforms/pseries/power.c | 33 ++---
arch/s390/hypfs/inode.c | 15 ++-
arch/s390/kernel/ipl.c | 149 +++++++++++++----------
block/genhd.c | 5 +-
drivers/acpi/bus.c | 12 ++-
drivers/acpi/system.c | 2 +-
drivers/base/base.h | 32 +++++-
drivers/base/bus.c | 142 +++++++++++++--------
drivers/base/class.c | 27 +++--
drivers/base/core.c | 24 ++--
drivers/base/dd.c | 4 +-
drivers/base/driver.c | 2 +-
drivers/base/firmware.c | 27 ++---
drivers/base/hypervisor.c | 14 ++-
drivers/base/platform.c | 4 +-
drivers/base/power/shutdown.c | 2 +-
drivers/base/sys.c | 31 ++---
drivers/edac/edac_mc_sysfs.c | 2 +-
drivers/firmware/edd.c | 15 ++-
drivers/firmware/efivars.c | 214 ++++---------------------------
drivers/parisc/pdc_stable.c | 186 ++++++++++++++--------------
drivers/pci/hotplug/acpiphp_ibm.c | 4 +-
drivers/pci/hotplug/pci_hotplug_core.c | 22 ++--
drivers/pci/hotplug/rpadlpar_sysfs.c | 2 +-
drivers/pci/probe.c | 11 +-
drivers/uio/uio.c | 2 +-
fs/configfs/mount.c | 14 +-
fs/debugfs/inode.c | 14 +-
fs/dlm/lockspace.c | 22 ++--
fs/ecryptfs/main.c | 130 +++----------------
fs/fuse/inode.c | 27 +++--
fs/gfs2/locking/dlm/sysfs.c | 24 ++--
fs/gfs2/sys.c | 15 +--
fs/namespace.c | 14 ++-
fs/ocfs2/cluster/masklog.c | 4 +-
fs/ocfs2/cluster/sys.c | 83 +++---------
fs/sysfs/file.c | 65 ++--------
include/acpi/acpi_bus.h | 2 +-
include/linux/device.h | 21 +---
include/linux/fs.h | 2 +-
include/linux/kobject.h | 76 ++++--------
include/linux/module.h | 3 +-
include/linux/pci_hotplug.h | 2 +-
include/linux/sched.h | 9 +-
kernel/ksysfs.c | 83 ++++++++-----
kernel/module.c | 6 +-
kernel/params.c | 26 ++---
kernel/power/disk.c | 20 ++-
kernel/power/main.c | 24 ++--
kernel/power/power.h | 4 +-
kernel/user.c | 104 ++++++++--------
lib/kobject.c | 129 +++++++++++++++++---
mm/slub.c | 20 ++--
security/inode.c | 12 +-
57 files changed, 900 insertions(+), 1065 deletions(-)
---------------
Greg Kroah-Hartman (50):
ecryptfs: clean up attribute mess
KOBJECT: remove struct kobj_type from struct kset
KOBJECT: remove kobj_set_kset_s as no one is using it anymore
kset: add kset_create_and_register function
kset: convert fuse to use kset_create
kset: convert securityfs to use kset_create
kset: convert debugfs to use kset_create
kset: convert configfs to use kset_create
kset: convert ecryptfs to use kset_create
kset: convert main fs kset to use kset_create
kset: convert gfs2 to use kset_create
kset: convert gfs2 dlm to use kset_create
kset: convert dlm to use kset_create
kset: convert pci hotplug to use kset_create_and_register
kset: remove decl_subsys_name
kset: convert kernel_subsys to use kset_create
kset: convert drivers/base/bus.c kset_create_and_register
kset: convert drivers/base/class.c kset_create_and_register
kset: convert drivers/base/firmware.c kset_create_and_register
kset: convert /sys/devices to use kset_create
kset: convert /sys/hypervisor to use kset_create
kset: convert /sys/devices/system to use kset_create
kset: convert slub to use kset_create
kset: move /sys/slab to /sys/kernel/slab
kset: convert /sys/module to use kset_create
kset: convert /sys/power to use kset_create
kset: convert s390 hypervisor kset to use kset_create
kset: convert struct bus_device->devices to use kset_create
kset: convert struct bus_device->drivers to use kset_create
driver core: remove owner field from struct bus_type
driver core: add way to get to bus kset
driver core: add way to get to bus device klist
driver core: remove fields from struct bus_type
ecryptfs: remove version_str file from sysfs
efivars: remove new_var and del_var files from sysfs
kobject: convert efivars to kobj_attr interface
firmware: export firmware_kset so that people can use that instead of the braindead firmware_register interface
kset: convert efivars to use kset_create for the efi subsystem.
kset: convert efivars to use kset_create for the vars sub-subsystem.
kobject: convert arm/mach-omap1/pm.c to kobj_attr interface
kobject: convert pseries/power.c to kobj_attr interface
kobject: convert s390 ipl.c to kobj_attr interface
kset: convert s390 ipl.c to use kset_create
kobject: convert parisc/pdc_stable to kobj_attr interface
kset: convert parisc/pdc_stable.c to use kset_create
kset: convert edd to use kset_create
kset: convert acpi to use kset_create
firmware: remove firmware_(un)register()
kset: convert ocfs2 to use kset_create
kset: remove decl_subsys macro
Kay Sievers (4):
Driver Core: add kobj_attribute handling
Driver Core: switch all dynamic ksets to kobj_sysfs_ops
fix struct user_info export's sysfs interaction
Driver Core: kill subsys_attribute and default sysfs ops
next reply other threads:[~2007-11-02 23:58 UTC|newest]
Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-02 23:57 Greg KH [this message]
2007-11-02 23:58 ` [PATCH 01/54] ecryptfs: clean up attribute mess Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 02/54] KOBJECT: remove struct kobj_type from struct kset Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 03/54] KOBJECT: remove kobj_set_kset_s as no one is using it anymore Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 04/54] kset: add kset_create_and_register function Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 05/54] kset: convert fuse to use kset_create Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 06/54] kset: convert securityfs " Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 07/54] kset: convert debugfs " Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 08/54] kset: convert configfs " Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 09/54] kset: convert ecryptfs " Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 10/54] kset: convert main fs kset " Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 11/54] kset: convert gfs2 " Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 12/54] kset: convert gfs2 dlm " Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 13/54] kset: convert " Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 14/54] kset: convert pci hotplug to use kset_create_and_register Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 15/54] kset: remove decl_subsys_name Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 16/54] kset: convert kernel_subsys to use kset_create Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 17/54] kset: convert drivers/base/bus.c kset_create_and_register Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 18/54] kset: convert drivers/base/class.c kset_create_and_register Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 19/54] kset: convert drivers/base/firmware.c kset_create_and_register Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 20/54] kset: convert /sys/devices to use kset_create Greg Kroah-Hartman
2007-11-02 23:58 ` [PATCH 21/54] kset: convert /sys/hypervisor " Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 22/54] kset: convert /sys/devices/system " Greg Kroah-Hartman
2007-11-05 18:11 ` Cornelia Huck
2007-11-05 18:58 ` Greg KH
2007-11-05 19:11 ` Cornelia Huck
2007-11-05 20:03 ` Greg KH
2007-11-13 23:14 ` Andrew Morton
2007-11-14 0:01 ` Andrew Morton
2007-11-14 0:35 ` Greg KH
2007-11-14 7:35 ` Andrew Morton
2007-11-02 23:59 ` [PATCH 23/54] kset: convert slub " Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 24/54] kset: move /sys/slab to /sys/kernel/slab Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 25/54] kset: convert /sys/module to use kset_create Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 26/54] kset: convert /sys/power " Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 27/54] kset: convert s390 hypervisor kset " Greg Kroah-Hartman
2007-11-05 13:18 ` Cornelia Huck
2007-11-05 17:06 ` Greg KH
2007-11-02 23:59 ` [PATCH 28/54] kset: convert struct bus_device->devices " Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 29/54] kset: convert struct bus_device->drivers " Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 30/54] driver core: remove owner field from struct bus_type Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 31/54] driver core: add way to get to bus kset Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 32/54] driver core: add way to get to bus device klist Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 33/54] driver core: remove fields from struct bus_type Greg Kroah-Hartman
2007-11-05 10:33 ` Cornelia Huck
2007-11-05 17:00 ` Greg KH
2007-11-02 23:59 ` [PATCH 34/54] Driver Core: add kobj_attribute handling Greg Kroah-Hartman
2007-11-05 12:42 ` Cornelia Huck
2007-11-05 16:23 ` Kay Sievers
2007-11-05 17:11 ` Greg KH
2007-11-05 17:25 ` Kay Sievers
2007-11-05 17:43 ` Cornelia Huck
2007-11-05 18:07 ` Kay Sievers
2007-11-05 18:17 ` Cornelia Huck
2007-11-05 18:39 ` Kay Sievers
2007-11-05 18:46 ` Greg KH
2007-11-05 18:59 ` Cornelia Huck
2007-11-05 20:01 ` Greg KH
2007-11-02 23:59 ` [PATCH 35/54] Driver Core: switch all dynamic ksets to kobj_sysfs_ops Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 36/54] fix struct user_info export's sysfs interaction Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 37/54] ecryptfs: remove version_str file from sysfs Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 38/54] efivars: remove new_var and del_var files " Greg Kroah-Hartman
2007-11-16 15:01 ` Matt Domsch
2007-11-27 5:47 ` Greg KH
2007-11-02 23:59 ` [PATCH 39/54] kobject: convert efivars to kobj_attr interface Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 40/54] firmware: export firmware_kset so that people can use that instead of the braindead firmware_register interface Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 41/54] kset: convert efivars to use kset_create for the efi subsystem Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 42/54] kset: convert efivars to use kset_create for the vars sub-subsystem Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 43/54] kobject: convert arm/mach-omap1/pm.c to kobj_attr interface Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 44/54] kobject: convert pseries/power.c " Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 45/54] kobject: convert s390 ipl.c " Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 46/54] kset: convert s390 ipl.c to use kset_create Greg Kroah-Hartman
2007-11-05 10:27 ` Cornelia Huck
2007-11-05 17:05 ` Greg KH
2007-11-02 23:59 ` [PATCH 47/54] kobject: convert parisc/pdc_stable to kobj_attr interface Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 48/54] kset: convert parisc/pdc_stable.c to use kset_create Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 49/54] Driver Core: kill subsys_attribute and default sysfs ops Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 50/54] kset: convert edd to use kset_create Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 51/54] kset: convert acpi " Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 52/54] firmware: remove firmware_(un)register() Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 53/54] kset: convert ocfs2 to use kset_create Greg Kroah-Hartman
2007-11-02 23:59 ` [PATCH 54/54] kset: remove decl_subsys macro Greg Kroah-Hartman
2007-11-06 6:25 ` [RFC] kobject and kset core changes and cleanups Andrew Morton
2007-11-06 7:11 ` Andrew Morton
2007-11-06 8:14 ` Stephane Eranian
2007-11-06 21:15 ` Greg KH
2007-11-06 21:33 ` Stephane Eranian
2007-11-06 8:04 ` Andrew Morton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20071102235758.GA9803@kroah.com \
--to=gregkh@suse.de \
--cc=greg@kroah.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.