Browse Source

srmcons: fix kmalloc(GFP_KERNEL) inside spinlock

Fixes http://bugzilla.kernel.org/show_bug.cgi?id=8341

Cc: <matthias.kaehlcke@gmail.com>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Andrew Morton 18 years ago
parent
commit
2af0bc94a6
1 changed files with 1 additions and 1 deletions
  1. 1 1
      arch/alpha/kernel/srmcons.c

+ 1 - 1
arch/alpha/kernel/srmcons.c

@@ -164,9 +164,9 @@ srmcons_get_private_struct(struct srmcons_private **ps)
 	int retval = 0;
 	int retval = 0;
 
 
 	if (srmconsp == NULL) {
 	if (srmconsp == NULL) {
+		srmconsp = kmalloc(sizeof(*srmconsp), GFP_KERNEL);
 		spin_lock_irqsave(&srmconsp_lock, flags);
 		spin_lock_irqsave(&srmconsp_lock, flags);
 
 
-		srmconsp = kmalloc(sizeof(*srmconsp), GFP_KERNEL);
 		if (srmconsp == NULL)
 		if (srmconsp == NULL)
 			retval = -ENOMEM;
 			retval = -ENOMEM;
 		else {
 		else {