Re: [PATCH] udev enhancements to use kernel event queue

Greg KH
2003-06-12T22:53:34Z

On Thu, Jun 12, 2003 at 04:02:47PM -0700, Greg KH wrote:
> On Thu, Jun 12, 2003 at 03:51:48PM -0700, Andrew Morton wrote:
> > Greg KH <greg@kroah.com> wrote:
> > >
> > > <handwaving>
> >
> > heh.
> >
> > Thought about adding a sequence number to the /sbin/hotplug argument list?
>
> /me owes you a lot of beer at ols.
>
> That's a world simpler than my proposal, I think I'll go write that
> patch right now...

Pat, here's a patch to add a sequence number to kobject hotplug calls to
help userspace out a lot.

thanks,

greg k-h

# kobject: add sequence number to hotplug events to help userspace out.

diff -Nru a/lib/kobject.c b/lib/kobject.c
--- a/lib/kobject.c Thu Jun 12 16:05:06 2003
+++ b/lib/kobject.c Thu Jun 12 16:05:06 2003
@@ -100,6 +100,7 @@

#define BUFFER_SIZE 1024 /* should be enough memory for the env */
#define NUM_ENVP 32 /* number of env pointers */
+static unsigned long sequence_num;
static void kset_hotplug(const char *action, struct kset *kset,
struct kobject *kobj)
{
@@ -151,6 +152,10 @@

envp [i++] = scratch;
scratch += sprintf(scratch, "ACTION=%s", action) + 1;
+
+ envp [i++] = scratch;
+ scratch += sprintf(scratch, "SEQNUM=%ld", sequence_num) + 1;
+ ++sequence_num;

kobj_path_length = get_kobj_path_length (kset, kobj);
kobj_path = kmalloc (kobj_path_length, GFP_KERNEL);