aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorHongjie Yang <hongjie@us.ibm.com>2008-03-05 06:37:16 -0500
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2008-03-05 06:37:20 -0500
commit583b33bc83d24791f11e862290ee0b79d804d2d8 (patch)
tree1d064b21e898e999e16aadbc1f24f72385cec4f1 /arch
parent208e559155c775ba63e9f6fe59ac6d1e15711d28 (diff)
[S390] incorrect reipl nss name.
/sys/firmware/reipl/nss/name contains the nss name when defsys or savesys command has been executed. If the defsys or savesys command fails the kernel_nss_name has to be cleared since a reipl on that nss name won't be possible. Signed-off-by: Hongjie Yang <hongjie@us.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/s390/kernel/early.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/arch/s390/kernel/early.c b/arch/s390/kernel/early.c
index 9f7b73b180f0..01832c440636 100644
--- a/arch/s390/kernel/early.c
+++ b/arch/s390/kernel/early.c
@@ -88,13 +88,17 @@ static noinline __init void create_kernel_nss(void)
88 88
89 __cpcmd(defsys_cmd, NULL, 0, &response); 89 __cpcmd(defsys_cmd, NULL, 0, &response);
90 90
91 if (response != 0) 91 if (response != 0) {
92 kernel_nss_name[0] = '\0';
92 return; 93 return;
94 }
93 95
94 __cpcmd(savesys_cmd, NULL, 0, &response); 96 __cpcmd(savesys_cmd, NULL, 0, &response);
95 97
96 if (response != strlen(savesys_cmd)) 98 if (response != strlen(savesys_cmd)) {
99 kernel_nss_name[0] = '\0';
97 return; 100 return;
101 }
98 102
99 ipl_flags = IPL_NSS_VALID; 103 ipl_flags = IPL_NSS_VALID;
100} 104}