uio: Fix lack of locking in init_uio_class
authorEric W. Biederman <ebiederm@aristanetworks.com>
Tue, 14 Sep 2010 18:36:27 +0000 (11:36 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 22 Oct 2010 17:16:43 +0000 (10:16 -0700)
commit3d4f9d76b0641b7984f95982e390927fc5998ad6
tree7f57194438afcfe364fc507b359840b65c63d203
parente52eec13cd6b7f30ab19081b387813e03e592ae5
uio: Fix lack of locking in init_uio_class

There is no locking in init_uio_class so multiple
drivers can race and create multiple uio classes.

Fix this by simplifying the code.   In particular always
register the uio class during module_init and make things
simpler.

Signed-off-by: Eric W. Biederman <ebiederm@aristanetworks.com>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Hans J. Koch <hjk@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/uio/uio.c