git: 9front

Download patch

ref: b5566d9a81766ce3864bc529bee7dea2acf6ae3c
parent: 0296855004cffcd89ca9d853c950a4726b8343d7
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Sat Nov 1 20:32:46 EDT 2014

pc, pc64: more sanity checking for lowraminit()

--- a/sys/src/9/pc/memory.c
+++ b/sys/src/9/pc/memory.c
@@ -388,6 +388,8 @@
 	x = PADDR(CPU0END);
 	bda = (uchar*)KADDR(0x400);
 	pa = ((bda[0x14]<<8)|bda[0x13])*KB;
+	if(pa > 640*KB)
+		pa = 640*KB;
 	if(x < pa){
 		mapfree(&rmapram, x, pa-x);
 		memset(KADDR(x), 0, pa-x);		/* keep us honest */
--- a/sys/src/9/pc64/memory.c
+++ b/sys/src/9/pc64/memory.c
@@ -386,6 +386,8 @@
 	x = PADDR(CPU0END);
 	bda = (uchar*)KADDR(0x400);
 	pa = ((bda[0x14]<<8)|bda[0x13])*KB;
+	if(pa > 640*KB)
+		pa = 640*KB;
 	if(x < pa){
 		mapfree(&rmapram, x, pa-x);
 		memset(KADDR(x), 0, pa-x);		/* keep us honest */
--