Received: by 2002:a05:6a10:c7c6:0:0:0:0 with SMTP id h6csp1319197pxy; Sun, 1 Aug 2021 21:01:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx7XO91SPfYjeS6IBIf/Wnu3kgl83JxL1JZI5dxc2nvbZyJBdJdfp6o+sHMwF/k0JQ+uL0n X-Received: by 2002:a92:dad0:: with SMTP id o16mr3552630ilq.65.1627876908613; Sun, 01 Aug 2021 21:01:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1627876908; cv=none; d=google.com; s=arc-20160816; b=nMwOpctrHwxMRiyd2ja8L/r+6vPWkR6tzGUvqD11IdGKcj9ZGr7sBBCxOaSIO2inNt gO2l4DX0UkqWCPK8V3MZdnQqLamireGktm+EFbOWvIpZCvdOUws6VXdgVhhAfwVZYZdv frvXU/Ml+eHIyhBGlPxxDwAwckMb9iXO/wKYb9B4QuVUKy0hbI0OKeYrA2yVaIdqOpN7 /Thu6/aURrq8LVA1fNTIeuejtDYzKn0tN+RtHGL/lxIbIMvK8rh6FszYYu80AFtRfqid 6bzWq/PHyScRBqaN+/dzkCXFoLc6pxxqRBt6Cj/W0kiv3O2Zjzd5yzcfDxxovY5H0cIm pbKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=BFmCnyFcbzxln0D633ltTMUlRyw1nrPqRzYssS2iQx8=; b=ohCavnSbKdPmfOvZF2oVWqK4o0Vnolmzdk9PVdn4Qc00CH0j4poyES0gBxSVe1KPt/ WlbtlxL1DUFpJGOAIu/IA2Rj6x/j329tbCru5Nw2fQGymUgyCFMmgO4lFXG29vOVzKcp mjV7aFw8V732WPOldZ2wIDBxcITyK2MnPN6Ep8LFtbWOFIYxIwKg5A2SH5yOTiDkVeJH 3jNcJwQRuLspa57VgSfgh/9cQJEPRm9wWhUJoWb/q09XhvNixPo6HO/3oNrAq12zQVpn LvAoJwECUiE1Hkig3joiDdivZAV2yMJZHWcEdAycaYReWKRbY9BFbVbdpo9GTWpKkTzB 9BKA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id 7si10909862ilx.20.2021.08.01.21.01.37; Sun, 01 Aug 2021 21:01:48 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229792AbhHBEBF (ORCPT + 99 others); Mon, 2 Aug 2021 00:01:05 -0400 Received: from mga17.intel.com ([192.55.52.151]:8832 "EHLO mga17.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229472AbhHBEBF (ORCPT ); Mon, 2 Aug 2021 00:01:05 -0400 X-IronPort-AV: E=McAfee;i="6200,9189,10063"; a="193660633" X-IronPort-AV: E=Sophos;i="5.84,287,1620716400"; d="scan'208";a="193660633" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Aug 2021 21:00:56 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,287,1620716400"; d="scan'208";a="668971385" Received: from fedora29.sh.intel.com ([10.239.182.87]) by fmsmga005.fm.intel.com with ESMTP; 01 Aug 2021 21:00:53 -0700 From: Pengfei Xu To: Shuah Khan , linux-kselftest , linux-kernel Cc: Pengfei Xu , Heng Su , Yu Yu-cheng , Yu Fenghua , Hansen Dave , Luck Tony , Mehta Sohil , Chen Yu C Subject: [RFC PATCH v2 0/2] Introduce XSAVE/XRSTOR self-test Date: Mon, 2 Aug 2021 12:00:02 +0800 Message-Id: X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The XSAVE feature set supports the saving and restoring of state components, and XSAVE feature is used for process context switching. The XSAVE state components include x87 state for FPU execution environment, SSE state, AVX state and so on. In order to ensure that XSAVE works correctly, add XSAVE basic test for XSAVE architecture functionality. This patch set tests and verifies the basic functions of XSAVE/XRSTOR in user space; during and after signal processing on the x86 platform, the XSAVE contents of the process should not be changed. This series introduces only the most basic XSAVE tests. In the future, the intention is to continue expanding the scope of these selftests to include more kernel XSAVE-related functionality and XSAVE-managed features like AMX and shadow stacks. Pengfei Xu (2): selftests/xsave: test basic XSAVE architecture functionality selftests/xsave: add xsave test during and after signal handling tools/testing/selftests/Makefile | 1 + tools/testing/selftests/xsave/.gitignore | 3 + tools/testing/selftests/xsave/Makefile | 6 + tools/testing/selftests/xsave/xsave_common.h | 246 ++++++++++++++++++ .../selftests/xsave/xsave_instruction.c | 83 ++++++ .../selftests/xsave/xsave_signal_handle.c | 184 +++++++++++++ 6 files changed, 523 insertions(+) create mode 100644 tools/testing/selftests/xsave/.gitignore create mode 100644 tools/testing/selftests/xsave/Makefile create mode 100644 tools/testing/selftests/xsave/xsave_common.h create mode 100644 tools/testing/selftests/xsave/xsave_instruction.c create mode 100644 tools/testing/selftests/xsave/xsave_signal_handle.c -- 2.20.1