diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-09-18 14:58:54 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-09-18 14:58:54 -0400 |
commit | 925a6f0bf8bd122d5d2429af7f0ca0fecf4ae71f (patch) | |
tree | 2e896fe76b141280d291a09c126adb3cbdb1c370 | |
parent | b161dfa6937ae46d50adce8a7c6b12233e96e7bd (diff) | |
parent | e352614cd3e7a5f7af7cff894a3b5a705181de21 (diff) |
Merge tag 'hwspinlock-3.6-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/hwspinlock
Pull hwspinlock fix from Ohad Ben-Cohen:
"A single hwspinlock fix by Wei Yongjun, which prevents potential NULL
dereferences"
* tag 'hwspinlock-3.6-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/hwspinlock:
hwspinlock/core: move the dereference below the NULL test
-rw-r--r-- | drivers/hwspinlock/hwspinlock_core.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/hwspinlock/hwspinlock_core.c b/drivers/hwspinlock/hwspinlock_core.c index 1201a15784c3..db713c0dfba4 100644 --- a/drivers/hwspinlock/hwspinlock_core.c +++ b/drivers/hwspinlock/hwspinlock_core.c | |||
@@ -552,7 +552,7 @@ EXPORT_SYMBOL_GPL(hwspin_lock_request_specific); | |||
552 | */ | 552 | */ |
553 | int hwspin_lock_free(struct hwspinlock *hwlock) | 553 | int hwspin_lock_free(struct hwspinlock *hwlock) |
554 | { | 554 | { |
555 | struct device *dev = hwlock->bank->dev; | 555 | struct device *dev; |
556 | struct hwspinlock *tmp; | 556 | struct hwspinlock *tmp; |
557 | int ret; | 557 | int ret; |
558 | 558 | ||
@@ -561,6 +561,7 @@ int hwspin_lock_free(struct hwspinlock *hwlock) | |||
561 | return -EINVAL; | 561 | return -EINVAL; |
562 | } | 562 | } |
563 | 563 | ||
564 | dev = hwlock->bank->dev; | ||
564 | mutex_lock(&hwspinlock_tree_lock); | 565 | mutex_lock(&hwspinlock_tree_lock); |
565 | 566 | ||
566 | /* make sure the hwspinlock is used */ | 567 | /* make sure the hwspinlock is used */ |