From nobody Thu Apr 2 06:27:59 2026 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.15]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C805A3E8C6F; Thu, 5 Mar 2026 17:44:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.15 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772732681; cv=none; b=Ox69a8mSFPBja8bxUs/JKGtv2T8es2ue7fEFX9k7mkO3wB2umN0Df1+PDbz/s2FQ0EW9xx5Z3TU+3vPRnD70+GJ42kOTusnbPnW50W6gAx0DQZAXHRuLqmCjpJMCciC9kAaX4Ma3lFRQheUr/TBQFJtxId2O/Otn5rGFQsYrTjs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772732681; c=relaxed/simple; bh=kSruFzXc1Zum96mNVfzSPzNRNnCqz3iLxx8kTs52I20=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ZA3RrgQVztSqSsdAYiXq8ZMGCumZiD60VeUd5Q+yn11v2LNFyDwJmVJNBdRCi1ajtl1Pda5pMPzGg0mGkFIMWiYU3LIeZVM5u+un9ItAiVRXM96tiqH16THziQ3K3HKxjJBnTLju1iE56lefHJnDvLFI6PSgZUCKyON3MuXI2WM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=aaxebCE3; arc=none smtp.client-ip=198.175.65.15 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="aaxebCE3" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1772732678; x=1804268678; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=kSruFzXc1Zum96mNVfzSPzNRNnCqz3iLxx8kTs52I20=; b=aaxebCE3Jgjh4qp24adqSiUimOWtF/91MEyLyp3vZLz+qykFKfJlHxJe jko723CLK8OD5whKdiD2moc9ioe5TDbk92KhRfx7iQfyJQmFljs6AyE7/ DI+AxhKfwu3iiIPN3oVEvTQC+beiNBCZJTYh7huOQD7d8Itoyg3PmW4ev VHg+DscCIsvY82RYKRorAZ8SruTcpTNYYXxS/wfYRq5L7XImEdIDyKvgs TFVBB9rJKyKSUjKehhSsSguHPYgE5lBi09WACYY2z7Ik31P+adJF55Osf 31Stal62FqkGXl8YhjaDGigM7tMqHAxa9vbyam2gYwJc6wi2oJWu593lF A==; X-CSE-ConnectionGUID: Wtr4i5GYRUKIE4T0+ZjTPA== X-CSE-MsgGUID: PiiHdOHRQ8OEx+0nRGbDOg== X-IronPort-AV: E=McAfee;i="6800,10657,11720"; a="77431570" X-IronPort-AV: E=Sophos;i="6.23,103,1770624000"; d="scan'208";a="77431570" Received: from fmviesa005.fm.intel.com ([10.60.135.145]) by orvoesa107.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2026 09:44:37 -0800 X-CSE-ConnectionGUID: 49uCp5y9Q3eDjhM4KFggQg== X-CSE-MsgGUID: MvTPDXUKRr6v8ZY0d9jMaQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.23,103,1770624000"; d="scan'208";a="223447871" Received: from mdroper-mobl2.amr.corp.intel.com (HELO localhost) ([10.124.220.244]) by fmviesa005-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Mar 2026 09:44:36 -0800 From: isaku.yamahata@intel.com To: kvm@vger.kernel.org Cc: isaku.yamahata@intel.com, isaku.yamahata@gmail.com, Paolo Bonzini , Sean Christopherson , linux-kernel@vger.kernel.org Subject: [PATCH v2 11/36] KVM: nVMX: Add alignment check for struct vmcs12 Date: Thu, 5 Mar 2026 09:43:51 -0800 Message-ID: <7112ca5bb871e809e469aa03b586f8b220d2d827.1772732517.git.isaku.yamahata@intel.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Isaku Yamahata As struct vmcs12 has __packed attributes and it has manual alignment, it's easy to add unaligned member without any warnings. Add alignment check to avoid accidental misalignment. Signed-off-by: Isaku Yamahata --- arch/x86/kvm/vmx/vmcs12.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/x86/kvm/vmx/vmcs12.h b/arch/x86/kvm/vmx/vmcs12.h index 21cd1b75e4fd..8c9d4c22b960 100644 --- a/arch/x86/kvm/vmx/vmcs12.h +++ b/arch/x86/kvm/vmx/vmcs12.h @@ -217,7 +217,8 @@ struct __packed vmcs12 { * although appending fields and/or filling gaps is obviously allowed. */ #define CHECK_OFFSET(field, loc) \ - ASSERT_STRUCT_OFFSET(struct vmcs12, field, loc) + ASSERT_STRUCT_OFFSET(struct vmcs12, field, loc); \ + static_assert(loc % __alignof(((struct vmcs12 *)0)->field) =3D=3D 0) =20 static inline void vmx_check_vmcs12_offsets(void) { --=20 2.45.2