[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] x86_64: Fix off-by-one error setting up the Interrupt Stack Tables
>>> On 09.05.12 at 12:31, Ian Campbell <Ian.Campbell@xxxxxxxxxx> wrote: > On Wed, 2012-05-09 at 11:22 +0100, Andrew Cooper wrote: >> diff -r 8f1e0cc4a507 xen/include/asm-x86/processor.h >> --- a/xen/include/asm-x86/processor.h >> +++ b/xen/include/asm-x86/processor.h >> @@ -424,7 +424,9 @@ struct tss_struct { >> union { u64 rsp1, esp1; }; >> union { u64 rsp2, esp2; }; >> u64 reserved1; >> - u64 ist[7]; >> + u64 ist[7]; /* Interrupt Stack Table is 1-based so tss->ist[0] >> + * corresponds to an IST value of 1 in an Interrupt >> + * Descriptor */ > > Would it be too sneaky to drop "reserved1" and make ist be 8 elements? > then ist[1] would actually be the slot corresponding to a value of 1 in > an IDT entry. While appealing at a first glance, I wouldn't recommend doing so: Documentation specifies it the way it's defined currently, and Linux also uses the same definition, so we'd only call for future bugs if we did it differently in our code. Jan >> u64 reserved2; >> u16 reserved3; _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |