On Mon, Aug 24, 2020 at 10:53:57AM +0200, Joerg Roedel wrote:> static inline void __unused_size_checks(void) > { > - BUILD_BUG_ON(sizeof(struct vmcb_save_area) != 0x298); > + BUILD_BUG_ON(sizeof(struct vmcb_save_area) != 1032); > BUILD_BUG_ON(sizeof(struct vmcb_control_area) != 256); > + BUILD_BUG_ON(sizeof(struct ghcb) != 4096);Could those naked numbers be proper, meaningfully named defines? -- Regards/Gruss, Boris. https://people.kernel.org/tglx/notes-about-netiquette
On Mon, Aug 24, 2020 at 12:44:51PM +0200, Borislav Petkov wrote:> On Mon, Aug 24, 2020 at 10:53:57AM +0200, Joerg Roedel wrote: > > static inline void __unused_size_checks(void) > > { > > - BUILD_BUG_ON(sizeof(struct vmcb_save_area) != 0x298); > > + BUILD_BUG_ON(sizeof(struct vmcb_save_area) != 1032); > > BUILD_BUG_ON(sizeof(struct vmcb_control_area) != 256); > > + BUILD_BUG_ON(sizeof(struct ghcb) != 4096); > > Could those naked numbers be proper, meaningfully named defines?I don't think so, if I look at the history of these checks their whole purpose seems to be to alert the developer/maintainer when their size changes and that they might not fit on the stack anymore. But that is taken care of in patch 1. Regards, Joerg
On Tue, Aug 25, 2020 at 11:22:24AM +0200, Joerg Roedel wrote:> I don't think so, if I look at the history of these checks their whole > purpose seems to be to alert the developer/maintainer when their size > changes and that they might not fit on the stack anymore. But that is > taken care of in patch 1.Why? What's wrong with: BUILD_BUG_ON(sizeof(struct vmcb_save_area) != VMCB_SAVE_AREA_SIZE); BUILD_BUG_ON(sizeof(struct vmcb_control_area) != VMCB_CONTROL_AREA_SIZE); BUILD_BUG_ON(sizeof(struct ghcb) != PAGE_SIZE); ? -- Regards/Gruss, Boris. https://people.kernel.org/tglx/notes-about-netiquette
On Thu, Aug 27, 2020 at 12:01:13PM -0400, Arvind Sankar wrote:> Wouldn't we rather just remove the checks?I think that's a different topic to be discussed with the KVM maintainers. For now I will add defines for the magic numbers. Regards, Joerg