drivers/char/misc.c: clear allocation bit in minor bitmap when device register fails
authorThadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Tue, 15 Dec 2009 02:00:30 +0000 (18:00 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 15 Dec 2009 16:53:27 +0000 (08:53 -0800)
commit4ae717da8d18839487485f6ae608b8542790fdd3
tree9db3390a593c0335f6944fd094c8fd8f52455be8
parent603c4ba96be998a8dd7a6f9b23681c49acdf4b64
drivers/char/misc.c: clear allocation bit in minor bitmap when device register fails

If there's a failure creating the device (because there's already one with
the same name, for example), the current implementation does not clear the
bit for the allocated minor and that number is lost for future
allocations.

Second, the test currently in misc_deregister is broken, since it does not
test for the 0 minor.

Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/char/misc.c