[S390] extmem unbalanced spin_lock.

segment save will exit with a lock held if the passed segment doesn't
exist. Any subsequent call to segment_save will lead to a deadlock.
Fix this and give up the lock before returning.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
Heiko Carstens 2006-12-04 15:40:20 +01:00 committed by Martin Schwidefsky
parent 645c98c8b6
commit 6b4044bdd1
1 changed files with 3 additions and 2 deletions

View File

@ -563,8 +563,9 @@ segment_save(char *name)
seg = segment_by_name (name);
if (seg == NULL) {
PRINT_ERR ("could not find segment %s in segment_save, please report to linux390@de.ibm.com\n",name);
return;
PRINT_ERR("could not find segment %s in segment_save, please "
"report to linux390@de.ibm.com\n", name);
goto out;
}
startpfn = seg->start_addr >> PAGE_SHIFT;