Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 684116ca authored by Elad Wexler's avatar Elad Wexler Committed by Greg Kroah-Hartman
Browse files

Drivers: char: misc: 'misc_deregister()' changed the 'mutex_unlock' logic upon an error



This change improves code readability & is less error-prone.
For example: case adding more error paths one should remember to call 'mutex_unlock'

Signed-off-by: default avatarElad Wexler <elad.wexler@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent bbf831df
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -193,8 +193,8 @@ int misc_register(struct miscdevice * misc)
	if (misc->minor == MISC_DYNAMIC_MINOR) {
		int i = find_first_zero_bit(misc_minors, DYNAMIC_MINORS);
		if (i >= DYNAMIC_MINORS) {
			mutex_unlock(&misc_mtx);
			return -EBUSY;
			err = -EBUSY;
			goto out;
		}
		misc->minor = DYNAMIC_MINORS - i - 1;
		set_bit(i, misc_minors);
@@ -203,8 +203,8 @@ int misc_register(struct miscdevice * misc)

		list_for_each_entry(c, &misc_list, list) {
			if (c->minor == misc->minor) {
				mutex_unlock(&misc_mtx);
				return -EBUSY;
				err = -EBUSY;
				goto out;
			}
		}
	}