lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 24 Jul 2008 09:49:57 -0700
From:	"Cihula, Joseph" <joseph.cihula@...el.com>
To:	<linux-kernel@...r.kernel.org>, <x86@...nel.org>
Cc:	"Kleen, Andi" <andi.kleen@...el.com>,
	"Wang, Shane" <shane.wang@...el.com>,
	"Wei, Gang" <gang.wei@...el.com>,
	"Brown, Len" <len.brown@...el.com>
Subject: [PATCH] acpi - Add support for AddressRangeUnusuable ACPI memory type

Add support for the E820_UNUSABLE memory type, which is defined in
Revision 3.0b (Oct. 10, 2006) of the ACPI Specification on p. 394 Table
14-1:
	AddressRangeUnusuable
	This range of address contains memory in which errors have been
detected. This range must not be used by the OSPM.

This patch applies cleanly to 2.6.26.

Signed-off-by:  Joseph Cihula <joseph.cihula@...el.com>
Signed-off-by:  Shane Wang <shane.wang@...el.com>
Signed-off-by:  Gang Wei <gang.wei@...el.com>

--- linux-2.6.26/arch/x86/kernel/e820_32.c	2008-07-13
14:51:29.000000000 -0700
+++ linux-2.6.26-acpi/arch/x86/kernel/e820_32.c	2008-07-23
13:25:44.000000000 -0700
@@ -198,6 +198,7 @@
 		case E820_RAM:	res->name = "System RAM"; break;
 		case E820_ACPI:	res->name = "ACPI Tables"; break;
 		case E820_NVS:	res->name = "ACPI Non-volatile Storage";
break;
+		case E820_UNUSABLE:     res->name = "Unusable memory";
break;
 		default:	res->name = "reserved";
 		}
 		res->start = e820.map[i].addr;
@@ -604,6 +605,9 @@
 		case E820_NVS:
 				printk("(ACPI NVS)\n");
 				break;
+		case E820_UNUSABLE:
+				printk("(unusable)\n");
+				break;
 		default:	printk("type %u\n", e820.map[i].type);
 				break;
 		}
--- linux-2.6.26/arch/x86/kernel/e820_64.c	2008-07-13
14:51:29.000000000 -0700
+++ linux-2.6.26-acpi/arch/x86/kernel/e820_64.c	2008-07-23
13:27:29.000000000 -0700
@@ -336,6 +336,7 @@
 		case E820_RAM:	res->name = "System RAM"; break;
 		case E820_ACPI:	res->name = "ACPI Tables"; break;
 		case E820_NVS:	res->name = "ACPI Non-volatile Storage";
break;
+		case E820_UNUSABLE:     res->name = "Unusable memory";
break;
 		default:	res->name = "reserved";
 		}
 		res->start = e820.map[i].addr;
@@ -495,6 +496,9 @@
 		case E820_NVS:
 			printk(KERN_CONT "(ACPI NVS)\n");
 			break;
+ 		case E820_UNUSABLE:
+			printk("(unusable)\n");
+			break;
 		default:
 			printk(KERN_CONT "type %u\n", e820.map[i].type);
 			break;
--- linux-2.6.26/include/asm-x86/e820.h	2008-07-13 14:51:29.000000000
-0700
+++ linux-2.6.26-acpi/include/asm-x86/e820.h	2008-07-23
13:25:44.000000000 -0700
@@ -8,6 +8,7 @@
 #define E820_RESERVED	2
 #define E820_ACPI	3
 #define E820_NVS	4
+#define E820_UNUSABLE	5
 
 #ifndef __ASSEMBLY__
 struct e820entry {
 <<linux-acpi-2.6.26.patch>> 

Download attachment "linux-acpi-2.6.26.patch" of type "application/octet-stream" (1731 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ