diff options
Diffstat (limited to 'drivers/s390')
-rw-r--r-- | drivers/s390/char/zcore.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/s390/char/zcore.c b/drivers/s390/char/zcore.c index cfe782ee6473..1bbae433fbd8 100644 --- a/drivers/s390/char/zcore.c +++ b/drivers/s390/char/zcore.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include <asm/debug.h> | 24 | #include <asm/debug.h> |
25 | #include <asm/processor.h> | 25 | #include <asm/processor.h> |
26 | #include <asm/irqflags.h> | 26 | #include <asm/irqflags.h> |
27 | #include <asm/checksum.h> | ||
27 | #include "sclp.h" | 28 | #include "sclp.h" |
28 | 29 | ||
29 | #define TRACE(x...) debug_sprintf_event(zcore_dbf, 1, x) | 30 | #define TRACE(x...) debug_sprintf_event(zcore_dbf, 1, x) |
@@ -704,7 +705,8 @@ static int __init zcore_reipl_init(void) | |||
704 | free_page((unsigned long) ipl_block); | 705 | free_page((unsigned long) ipl_block); |
705 | return rc; | 706 | return rc; |
706 | } | 707 | } |
707 | if (cksm(ipl_block, ipl_block->hdr.len) != ipib_info.checksum) { | 708 | if (csum_partial(ipl_block, ipl_block->hdr.len, 0) != |
709 | ipib_info.checksum) { | ||
708 | TRACE("Checksum does not match\n"); | 710 | TRACE("Checksum does not match\n"); |
709 | free_page((unsigned long) ipl_block); | 711 | free_page((unsigned long) ipl_block); |
710 | ipl_block = NULL; | 712 | ipl_block = NULL; |