Thread (40 messages) 40 messages, 7 authors, 2012-03-27

Re: [PATCH] ACPI: Implement overriding of arbitrary ACPI tables via initrd

From: Konrad Rzeszutek Wilk <hidden>
Date: 2012-03-24 19:22:06
Also in: lkml

On Sat, Mar 24, 2012 at 12:15:59PM -0700, H. Peter Anvin wrote:
On 03/24/2012 11:42 AM, Konrad Rzeszutek Wilk wrote:
quoted
Probably should also have:
		u32 version;

in case we decide to expand this structure in the future, and:
quoted
		u32 type;	/* 1 = file data, 2 = ACPI, 3 = microcode... */
		u32 length;	/* Length of data object */
	};
and encapsulate the whole thing in a 4K union?
For "version" you'd have to define what happens if you see a version
number you don't recognize, and why that is in any way better than
changing the magic number or the type.  It is something that people like
to throw in without thinking about it, and that is a mistake.
I was thinking of interface version. So the first would be 1, and if
there are extensions (so version 2 for example), it should support 1 and 2.
The idea is to expand past the structure with newer additions without
breaking the binary interface.
Forcing everything to be page-aligned may be a good idea, although that
assumes all bootloaders actually align them that way...
Oh, and be 4K.
quoted
Perhaps the header should be in big-endian (that is the same as the network
byte order, right?) and each sub-type can define its own endian?
The content of the encapsulation is its own thing; it will be different
for different types as most of them already

	-hpa

-- 
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help