From 02887abbf4d1186bd5131eb95d2a32711881861f Mon Sep 17 00:00:00 2001 From: Michael Holzheu Date: Thu, 22 Apr 2010 17:17:07 +0200 Subject: [PATCH] --- yaml --- r: 190131 b: refs/heads/master c: 76ef964c78797f9baed7c2f9a58f696e86d8a048 h: refs/heads/master i: 190129: 87d262ff88cd16983688d7f52bc309ba98195821 190127: afa9f61b60200e161549a68d6a856a2d14a92c61 v: v3 --- [refs] | 2 +- trunk/drivers/s390/char/zcore.c | 6 +----- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 5503e3a82a76..ff9d7c60f17c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 157a1a27d5921fc94db8c14e0d01363d13de99b5 +refs/heads/master: 76ef964c78797f9baed7c2f9a58f696e86d8a048 diff --git a/trunk/drivers/s390/char/zcore.c b/trunk/drivers/s390/char/zcore.c index 18daf16aa357..7217966f7d31 100644 --- a/trunk/drivers/s390/char/zcore.c +++ b/trunk/drivers/s390/char/zcore.c @@ -638,11 +638,7 @@ static int __init zcore_reipl_init(void) rc = memcpy_hsa_kernel(ipl_block, ipib_info.ipib, PAGE_SIZE); else rc = memcpy_real(ipl_block, (void *) ipib_info.ipib, PAGE_SIZE); - if (rc) { - free_page((unsigned long) ipl_block); - return rc; - } - if (csum_partial(ipl_block, ipl_block->hdr.len, 0) != + if (rc || csum_partial(ipl_block, ipl_block->hdr.len, 0) != ipib_info.checksum) { TRACE("Checksum does not match\n"); free_page((unsigned long) ipl_block);