On Tue, 2016-08-09 at 10:19 -0300, Thiago Jung Bauermann wrote: > Am Dienstag, 09 August 2016, 09:01:13 schrieb Mimi Zohar: > > On Tue, 2016-08-09 at 20:59 +1000, Michael Ellerman wrote: > > > Mimi Zohar <zohar at linux.vnet.ibm.com> writes: > > > > diff --git a/security/integrity/ima/ima.h > > > > b/security/integrity/ima/ima.h > > > > index b5728da..84e8d36 100644 > > > > --- a/security/integrity/ima/ima.h > > > > +++ b/security/integrity/ima/ima.h > > > > @@ -102,6 +102,13 @@ struct ima_queue_entry { > > > > > > > > }; > > > > extern struct list_head ima_measurements; /* list of all > measurements > > > > */ > > > > > > > > +/* Some details preceding the binary serialized measurement list */ > > > > +struct ima_kexec_hdr { > > > > + unsigned short version; > > > > + unsigned long buffer_size; > > > > + unsigned long count; > > > > +} __packed; > > > > + > > > > > > Am I understanding it correctly that this structure is passed between > > > kernels? > > Yes, the header prefixes the measurement list, which is being passed on > > the same computer to the next kernel. Could the architecture (eg. > > LE/BE) change between soft re-boots? > > Yes. I am able to boot a BE kernel from an LE kernel with my patches. > Whether we want to support that or not is another question... The <securityfs/ima/binary_runtime_measurements is system architecture dependent. It looks like the khdr->version check in ima_restore_measurement_list() would fail if the architecture changes. If/when we update the binary measurement list format to support multiple TPM PCRs, we should address the endianness as well. Mimi