]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
uevent: send events in correct order according to seqnum (v3)
authorAndrew Vagin <avagin@openvz.org>
Wed, 7 Mar 2012 10:49:56 +0000 (14:49 +0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 2 Apr 2012 17:31:52 +0000 (10:31 -0700)
commit8247c5b75057188e90aee29fc907a2b2ac9d405f
tree00483d3202d16ae0d9b0209ad66668894e57b1b7
parentb2af31bf80a9c38d9ade24e44aa269807b4f592c
uevent: send events in correct order according to seqnum (v3)

commit 7b60a18da393ed70db043a777fd9e6d5363077c4 upstream.

The queue handling in the udev daemon assumes that the events are
ordered.

Before this patch uevent_seqnum is incremented under sequence_lock,
than an event is send uner uevent_sock_mutex. I want to say that code
contained a window between incrementing seqnum and sending an event.

This patch locks uevent_sock_mutex before incrementing uevent_seqnum.

v2: delete sequence_lock, uevent_seqnum is protected by uevent_sock_mutex
v3: unlock the mutex before the goto exit

Thanks for Kay for the comments.

Signed-off-by: Andrew Vagin <avagin@openvz.org>
Tested-By: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
lib/kobject_uevent.c