On Fri, Oct 06, 2017 at 08:06:00PM -0500, Brijesh Singh wrote: > Add a include file which defines the ioctl and command id used for > issuing SEV platform management specific commands. > > Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx> > Cc: "Radim Krčmář" <rkrcmar@xxxxxxxxxx> > Cc: Borislav Petkov <bp@xxxxxxx> > Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> > Cc: Gary Hook <gary.hook@xxxxxxx> > Cc: Tom Lendacky <thomas.lendacky@xxxxxxx> > Cc: linux-crypto@xxxxxxxxxxxxxxx > Cc: kvm@xxxxxxxxxxxxxxx > Cc: linux-kernel@xxxxxxxxxxxxxxx > Signed-off-by: Brijesh Singh <brijesh.singh@xxxxxxx> > --- > include/uapi/linux/psp-sev.h | 115 +++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 115 insertions(+) > create mode 100644 include/uapi/linux/psp-sev.h First of all, thanks for splitting the patch - it is much easier to review this way. Then, this patch should be 12.1, i.e., the first of the split because otherwise the previous one - which should be the next - fails building due to drivers/crypto/ccp/psp-dev.c:26:32: fatal error: uapi/linux/psp-sev.h: No such file or directory #include <uapi/linux/psp-sev.h> ^ Just swap them in their order. Also, those SEV commands should be __packed, see below. With that addressed: Reviewed-by: Borislav Petkov <bp@xxxxxxx> --- diff --git a/include/uapi/linux/psp-sev.h b/include/uapi/linux/psp-sev.h index a385bf2b8d2a..b63e116f18c1 100644 --- a/include/uapi/linux/psp-sev.h +++ b/include/uapi/linux/psp-sev.h @@ -53,7 +53,7 @@ struct sev_user_data_status { __u32 config; /* Out */ __u8 build; /* Out */ __u32 guest_count; /* Out */ -}; +} __packed; /** * struct sev_user_data_pek_csr - PEK_CSR command parameters @@ -64,7 +64,7 @@ struct sev_user_data_status { struct sev_user_data_pek_csr { __u64 address; /* In */ __u32 length; /* In/Out */ -}; +} __packed; /** * struct sev_user_data_cert_import - PEK_CERT_IMPORT command parameters @@ -79,7 +79,7 @@ struct sev_user_data_pek_cert_import { __u32 pek_cert_len; /* In */ __u64 oca_cert_address; /* In */ __u32 oca_cert_len; /* In */ -}; +} __packed; /** * struct sev_user_data_pdh_cert_export - PDH_CERT_EXPORT command parameters @@ -94,7 +94,7 @@ struct sev_user_data_pdh_cert_export { __u32 pdh_cert_len; /* In/Out */ __u64 cert_chain_address; /* In */ __u32 cert_chain_len; /* In/Out */ -}; +} __packed; /** * struct sev_issue_cmd - SEV ioctl parameters @@ -107,7 +107,7 @@ struct sev_issue_cmd { __u32 cmd; /* In */ __u64 data; /* In */ __u32 error; /* Out */ -}; +} __packed; #define SEV_IOC_TYPE 'S' #define SEV_ISSUE_CMD _IOWR(SEV_IOC_TYPE, 0x0, struct sev_issue_cmd) -- Regards/Gruss, Boris. SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg) --