From patchwork Mon Mar 23 10:17:17 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Cooper X-Patchwork-Id: 11452607 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 11FB5159A for ; Mon, 23 Mar 2020 10:19:06 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E033320409 for ; Mon, 23 Mar 2020 10:19:05 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=citrix.com header.i=@citrix.com header.b="MKKyiQok" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E033320409 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=citrix.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1jGK9F-0007Uf-Lf; Mon, 23 Mar 2020 10:17:33 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1jGK9E-0007Ua-Lk for xen-devel@lists.xenproject.org; Mon, 23 Mar 2020 10:17:32 +0000 X-Inumbo-ID: 816027e0-6cef-11ea-829d-12813bfff9fa Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 816027e0-6cef-11ea-829d-12813bfff9fa; Mon, 23 Mar 2020 10:17:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1584958652; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=NVhPp3CK1T6YVM/zSwD7Mh4a8zQCz0UWiIu3H8QT/iE=; b=MKKyiQokVAQkMgop6oI7GoXzKgLeilSoFtqbtQKVghA/tK5tU6bSF7CY kXNVAcCtjsscnz+3zDG6Z/am/nniwWiDyWWT6o5t6mgL1OSDoUua//LJY 27TlcNgN5kxzxlcPr5nOzqNoDKxoye8k1gRzf+VTlqoagQN9kUrkS8Vsh 4=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none; spf=None smtp.pra=andrew.cooper3@citrix.com; spf=Pass smtp.mailfrom=Andrew.Cooper3@citrix.com; spf=None smtp.helo=postmaster@mail.citrix.com Received-SPF: None (esa3.hc3370-68.iphmx.com: no sender authenticity information available from domain of andrew.cooper3@citrix.com) identity=pra; client-ip=162.221.158.21; receiver=esa3.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="andrew.cooper3@citrix.com"; x-conformance=sidf_compatible Received-SPF: Pass (esa3.hc3370-68.iphmx.com: domain of Andrew.Cooper3@citrix.com designates 162.221.158.21 as permitted sender) identity=mailfrom; client-ip=162.221.158.21; receiver=esa3.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="Andrew.Cooper3@citrix.com"; x-conformance=sidf_compatible; x-record-type="v=spf1"; x-record-text="v=spf1 ip4:209.167.231.154 ip4:178.63.86.133 ip4:195.66.111.40/30 ip4:85.115.9.32/28 ip4:199.102.83.4 ip4:192.28.146.160 ip4:192.28.146.107 ip4:216.52.6.88 ip4:216.52.6.188 ip4:162.221.158.21 ip4:162.221.156.83 ip4:168.245.78.127 ~all" Received-SPF: None (esa3.hc3370-68.iphmx.com: no sender authenticity information available from domain of postmaster@mail.citrix.com) identity=helo; client-ip=162.221.158.21; receiver=esa3.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="postmaster@mail.citrix.com"; x-conformance=sidf_compatible IronPort-SDR: /+hYMUVxRG7LFHgqu8b/DaolDUyfaGApd5PzqQVQWhAN3QyHvm4ZgpACrSjwS08C/PGPjn1XAi mBFY6OFJM1+5AhGydIxkhITVkDQPPwBIbq0DYDpMB+WMXLUxfzL6qNmszNA6OMNL3Ymqpc3JPK r/dhdx7Htsq7so7Lpa1gaJLzJiQhSaWQr3vxQhIbtzZY6mCIQcVJ4IUb3Cc3xeR6FiuQo8X3pO pGnxv69lLNG0/qHHaRROvWFfguTy6VoSGeXBX9HXeNxsvpGe3fkWXrw1EWWyof+qm7mRwkO0Cm ld0= X-SBRS: 2.7 X-MesageID: 14435765 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.158.21 X-Policy: $RELAYED X-IronPort-AV: E=Sophos;i="5.72,296,1580792400"; d="scan'208";a="14435765" From: Andrew Cooper To: Xen-devel Date: Mon, 23 Mar 2020 10:17:17 +0000 Message-ID: <20200323101724.15655-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.11.0 MIME-Version: 1.0 Subject: [Xen-devel] [PATCH 0/7] x86/ucode: Cleanup and fixes - Part 3/n (Intel) X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Andrew Cooper , Wei Liu , Jan Beulich , =?utf-8?q?Roger_Pau_Monn=C3=A9?= Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" This focuses on the Intel ucode driver, removing the gratuitous memory allocations and indirection, as well as minor fixes in other areas of the logic. It depends on both the Part 1 and 2 series, and hopefully better demonstrates why making struct microcode_patch opaque is a sensible move forward. Andrew Cooper (7): x86/ucode: Document the behaviour of the microcode_ops hooks x86/ucode/intel: Adjust microcode_sanity_check() to not take void * x86/ucode/intel: Remove gratuitous memory allocations from cpu_request_microcode() x86/ucode/intel: Reimplement get_{data,total}size() helpers x86/ucode/intel: Clean up microcode_update_match() x86/ucode/intel: Clean up microcode_sanity_check() x86/ucode/intel: Fold structures together xen/arch/x86/cpu/microcode/intel.c | 371 +++++++++++++++-------------------- xen/arch/x86/cpu/microcode/private.h | 46 +++++ xen/include/asm-x86/microcode.h | 5 + 3 files changed, 214 insertions(+), 208 deletions(-)