Thread (6 messages) 6 messages, 2 authors, 2012-10-16
DORMANTno replies

[RESEND PATCH 2/2] ARM: kexec: Check segment memory addresses

From: Will Deacon <hidden>
Date: 2012-10-16 17:16:01
Also in: linux-omap

On Tue, Oct 16, 2012 at 06:09:00PM +0100, Aaro Koskinen wrote:
quoted hunk ↗ jump to hunk
On Tue, Oct 16, 2012 at 05:32:26PM +0100, Will Deacon wrote:
quoted
Interesting, it sounds like kexec thinks that you don't have contiguous
memory from 0x80008000 to 0x803ad000. Can you provide some more information
about your physical memory map please?
Well, I think it's because the patch is wrong. Shouldn't it be:
diff --git a/arch/arm/kernel/machine_kexec.c b/arch/arm/kernel/machine_kexec.c
index e29c333..a80192e 100644
--- a/arch/arm/kernel/machine_kexec.c
+++ b/arch/arm/kernel/machine_kexec.c
@@ -47,7 +47,7 @@ int machine_kexec_prepare(struct kimage *image)
 
 		err = memblock_is_region_memory(current_segment->mem,
 						current_segment->memsz);
-		if (err)
+		if (!err)
 			return - EINVAL;
 
 		err = get_user(header, (__be32*)current_segment->buf);
Oops, that's a howler! Thanks for spotting it. We should probably reflow the
code a bit because !err sounds like everything should be ok.

Fancy reworking the patch or do you want me to take care of this?

Cheers,

Will
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help