RE: [RFC][PATCH 3/3] TXT: Intel(R) TXT and tboot kernel support

From: Cihula, Joseph
Date: Thu Oct 09 2008 - 16:38:43 EST


> From: Chris Wright [mailto:chrisw@xxxxxxxxxxxx]
> Sent: Thursday, October 09, 2008 10:50 AM
>
> * Pavel Machek (pavel@xxxxxxx) wrote:
> > > +struct tboot_acpi_sleep_info {
> > > + u16 pm1a_cnt;
> > > + u16 pm1b_cnt;
> > > + u16 pm1a_evt;
> > > + u16 pm1b_evt;
> > > + u16 pm1a_cnt_val;
> > > + u16 pm1b_cnt_val;
> > > +} __attribute__ ((__packed__));
> > > +
> > > +struct tboot_shared {
> > > + /* version 0x01+ fields: */
> > > + struct tboot_uuid uuid; /* TBOOT_SHARED_UUID */
> > > + u32 version; /* Version number: 2 is current */
> > > + u32 log_addr; /* physical addr of tb_log_t log */
> > > + u32 shutdown_entry32; /* entry point for tboot shutdown from
> > > 32b */
> > > + u32 shutdown_entry64; /* entry point for tboot shutdown from
> > > 64b */
> >
> > should these be function pointers?

Function ptrs don't work for an ABI since they are different sizes for
32b and 64b binaries.

> I asked earlier, I didn't understand why it needs to be 2 fields,
since
> it's u32 in both cases and can't both be used at once.

We will look at seeing if we can make a single entry point that detects
if it was called by 64b code, disable IA32e mode, and then jumps to the
32b code. We did it this way initially because it was easier code to
keep them separate and has been working for some time. We'll also have
to adjust Xen if/when we do this.

Joe
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/