Skip to contentSkip to conversation

fix valid_memory_range region merging

PATCH In review Michael Neuling 2 participants 5 messages Apr 26, 2007 – Feb 26, 2008

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 fix valid_memory_range region merging

Check the next region we are including is type RANGE_RAM as well.

---
I've not actually seen this cause a problem, but it looks wrong. We should probably merge regions properly and solve this problem for real.

 kexec/kexec.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
kexec/kexec.c +2 -1
Index: kexec-tools-testing/kexec/kexec.c
===================================================================
@@ -96,7 +96,8 @@ int valid_memory_range(struct kexec_info
 		mstart = info->memory_range[i].start;
 		mend = info->memory_range[i].end;
 		if (i < info->memory_ranges - 1
-		    && mend == info->memory_range[i+1].start)
+		    && mend == info->memory_range[i+1].start
+		    && info->memory_range[i+1].type == RANGE_RAM)
 			mend = info->memory_range[i+1].end;
 
 		/* Check to see if we are fully contained */

_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

#1 lore raw
Quoted 6 lines · Michael Neuling

Check the next region we are including is type RANGE_RAM as well.

---
I've not actually seen this cause a problem, but it looks wrong. We should probably merge regions properly and solve this problem for real.

I think that Magnus was working on some code do do just that...

Signature · 9 lines
Horms
  H: http://www.vergenet.net/~horms/
  W: http://www.valinux.co.jp/en/


_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec
#2 lore raw
In reply to Michael Neuling
Quoted 6 lines · Michael Neuling

Check the next region we are including is type RANGE_RAM as well.

---
I've not actually seen this cause a problem, but it looks wrong. We should probably merge regions properly and solve this problem for real.

Hi Michael,

appologies for this blast-from-the-past. This mail somehow ended up filed in the wrong place and I chanced upon it just now.

This fix does seem correct to me, though I haven't seen it cause any problems either. I'm happy to merge it (better late than never, right?) if you are still happy with it.

Quoted 18 lines
 kexec/kexec.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Index: kexec-tools-testing/kexec/kexec.c
===================================================================

kexec/kexec.c +2 -1
@@ -96,7 +96,8 @@ int valid_memory_range(struct kexec_info
 		mstart = info->memory_range[i].start;
 		mend = info->memory_range[i].end;
 		if (i < info->memory_ranges - 1
-		    && mend == info->memory_range[i+1].start)
+		    && mend == info->memory_range[i+1].start
+		    && info->memory_range[i+1].type == RANGE_RAM)
 			mend = info->memory_range[i+1].end;
 
 		/* Check to see if we are fully contained */
Signature · 7 lines
Horms


_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec
#3 lore raw
Quoted 8 lines · In message <[email protected]> you wrote:
Quoted 6 lines · Michael Neuling

Check the next region we are including is type RANGE_RAM as well.

---
I've not actually seen this cause a problem, but it looks wrong. We should probably merge regions properly and solve this problem for real.

Quoted 8 lines

Hi Michael,

appologies for this blast-from-the-past. This mail somehow ended up filed in the wrong place and I chanced upon it just now.

This fix does seem correct to me, though I haven't seen it cause any problems either. I'm happy to merge it (better late than never, right?) if you are still happy with it.

Sweet thanks, I'd well and truly forgotten about it. I think it was just a random code cleanup, so if it still applies it should be fine to merge.

Mikey

Quoted 18 lines
Quoted 18 lines

 kexec/kexec.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Index: kexec-tools-testing/kexec/kexec.c
===================================================================

kexec/kexec.c +2 -1
@@ -96,7 +96,8 @@ int valid_memory_range(struct kexec_info
 		mstart = info->memory_range[i].start;
 		mend = info->memory_range[i].end;
 		if (i < info->memory_ranges - 1
-		    && mend == info->memory_range[i+1].start)
+		    && mend == info->memory_range[i+1].start
+		    && info->memory_range[i+1].type == RANGE_RAM)
 			mend = info->memory_range[i+1].end;
 
Quoted 5 lines
Quoted 1 line
kexec/kexec.c +0 -0
 		/* Check to see if we are fully contained */
Signature · 1 line
Horms

_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

#4 lore raw
Quoted 14 lines · Michael Neuling
Quoted 13 lines · In message <[email protected]> you wrote:
Quoted 6 lines · Michael Neuling

Check the next region we are including is type RANGE_RAM as well.

---
I've not actually seen this cause a problem, but it looks wrong. We should probably merge regions properly and solve this problem for real.

Hi Michael,

appologies for this blast-from-the-past. This mail somehow ended up filed in the wrong place and I chanced upon it just now.

Quoted 7 lines
Quoted 3 lines

This fix does seem correct to me, though I haven't seen it cause any problems either. I'm happy to merge it (better late than never, right?) if you are still happy with it.

Sweet thanks, I'd well and truly forgotten about it. I think it was just a random code cleanup, so if it still applies it should be fine to merge.

Cool, it seems to apply just fine.
I've queued it up to be merged after the release.

Signature · 7 lines
Horms


_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec