aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/s390')
-rw-r--r--drivers/s390/char/zcore.c4
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;