Re: [patch] kernel sysfs events layer

Daniel Stekloff
2004-09-01T02:09:10Z

On Tue, 2004-08-31 at 14:42, Robert Love wrote:
> Here is the Kernel Events Layer rewritten as more of an asynchronous
> sysfs change notifier. The concept of object and payload have been
> removed. Instead, events are modeled as signals emitting from kobjects.
> It is pretty simple.
>
> The interface is now:
>
> int send_kevent(enum kevent type, struct kset *kset,
> struct kobject *kobj, const char *signal)
>
> Say your processor (with kobject "kobj") is overheating. You might do
>
> send_kevent(KEVENT_POWER, NULL, kobj, "overheating");
>
> We could get rid of signal and just require passing a specific attribute
> file in sysfs, which would presumably explain the reason for the event,
> but I think having a single signal value is acceptable. The rest of the
> payload has been ditched.
>
> The basic idea here is to represent to user-space events as changes to
> sysfs. Media was changed? Then that block device in sysfs emits a
> "media_change" event.
>
> This patch includes two example events: file system mount and unmount.
>
> Kay has some utilities and examples at
> http://vrfy.org/projects/kevents/
> and
> http://vrfy.org/projects/kdbusd/
>
> The intention of this work is to hook the kernel into D-BUS, although
> the implementation is agnostic and should work with any user-space
> setup.
>
> Best,
>
> Robert Love

Hi Robert,

Are you limiting the kernel event mechanism a little too much by getting
rid of the payload? Wouldn't it be useful to sometimes have data at
event time?

Thanks,

Dan