From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mx.groups.io with SMTP id smtpd.web10.7304.1686636811551339614 for ; Mon, 12 Jun 2023 23:13:31 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=PJRn1oM/; spf=pass (domain: intel.com, ip: 192.55.52.115, mailfrom: ray.ni@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686636811; x=1718172811; h=from:to:subject:date:message-id:mime-version: content-transfer-encoding; bh=F+2AiIEQonVUdIBYPXw3MhIE5Mx2UJuzwJxkPjnJyiQ=; b=PJRn1oM/kInIdsbmLX0gbS1RI2urNrVOYioHI44xJAjF9f0lK28BXroC dIPudlq7QknP1lvTV4562Z4UIPNPb5weRWfsmnQ7G63YXsP5gZQYsyGk/ Cv3CwRGJ88ovDyLR0e1TZ+9g3Lnvhf8kaykDoVk/885LIGHgmw7OKBktE TaAukZpRfYHa+sSJ/PptZhtM/uMroXz5O9lkZavY46lQIjI0oEv6jVzDo uAwn/51rap7QN1OrzHrsT8Ip6l0a3VxWWA7Cg2PBGob9oZms9OYLgzM12 m3XoBttuYYa9wy+Wkky/R9TxO61ubIi0tyTnext6KgNgprBkoIL6FhpIo w==; X-IronPort-AV: E=McAfee;i="6600,9927,10739"; a="358238152" X-IronPort-AV: E=Sophos;i="6.00,238,1681196400"; d="scan'208";a="358238152" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jun 2023 23:13:31 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10739"; a="741306356" X-IronPort-AV: E=Sophos;i="6.00,238,1681196400"; d="scan'208";a="741306356" Received: from shwdeopenlab706.ccr.corp.intel.com ([10.239.55.95]) by orsmga008.jf.intel.com with ESMTP; 12 Jun 2023 23:13:30 -0700 From: "Ni, Ray" To: devel@edk2.groups.io Subject: [PATCH V3 0/8] Enable SMM perf-logging Date: Tue, 13 Jun 2023 14:13:17 +0800 Message-Id: <20230613061325.1664-1-ray.ni@intel.com> X-Mailer: git-send-email 2.39.1.windows.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit To avoid impacting runtime performance, the perf-logging is disabled upon ExitBootServices. Ray Ni (8): UefiCpuPkg/CpuSmm: Add perf-logging for time-consuming BSP procedures UefiCpuPkg/CpuSmm: Add perf-logging for MP procedures MdeModulePkg/SmmCore: Add perf-logging for time-consuming procedures MdeModulePkg/SmmCore: Add perf-logging for SmmDriverDispatchHandler MdeModulePkg/SmmPerformanceLib: Disable perf-logging after ExitBS MdeModulePkg/SmmCorePerformanceLib: Disable perf-logging at runtime UefiCpuPkg/SmmCpu: Add PcdSmmApPerfLogEnable control AP perf-logging MdeModulePkg/SmmCore: Perf-log PlatformHookBefore/AfterSmmDispatch MdeModulePkg/Core/PiSmmCore/Dispatcher.c | 5 +- MdeModulePkg/Core/PiSmmCore/PiSmmCore.c | 19 +++- MdeModulePkg/Core/PiSmmCore/Smi.c | 6 ++ .../SmmCorePerformanceLib.c | 48 ++++++++- .../SmmCorePerformanceLib.inf | 3 +- .../SmmPerformanceLib/SmmPerformanceLib.c | 63 ++++++++++- .../SmmPerformanceLib/SmmPerformanceLib.inf | 4 + UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 42 +++++++- UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c | 38 +++++++ UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 2 + UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 4 + .../PiSmmCpuDxeSmm/SmmCpuMemoryManagement.c | 13 ++- UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.c | 100 ++++++++++++++++++ UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.h | 83 +++++++++++++++ UefiCpuPkg/PiSmmCpuDxeSmm/SmmProfile.c | 4 +- UefiCpuPkg/UefiCpuPkg.dec | 6 ++ 16 files changed, 429 insertions(+), 11 deletions(-) create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.c create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.h -- 2.39.1.windows.1