From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753219AbdJGAEi (ORCPT ); Fri, 6 Oct 2017 20:04:38 -0400 Received: from mga03.intel.com ([134.134.136.65]:30613 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752851AbdJGADh (ORCPT ); Fri, 6 Oct 2017 20:03:37 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.42,486,1500966000"; d="scan'208";a="159826423" From: Andi Kleen To: x86@kernel.org Cc: linux-kernel@vger.kernel.org Subject: Support generic disabling of all XSAVE features Date: Fri, 6 Oct 2017 17:03:23 -0700 Message-Id: <20171007000328.12843-1-andi@firstfloor.org> X-Mailer: git-send-email 2.13.6 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org For performance testing and debugging it can be useful to disable XSAVE features individually. This patchkit hooks up XSAVE with the generic clearcpuid=... option, so that disabling a CPUID feature automatically disables the respective XSAVE feature. It also cleans up CPUID dependency management. Currently it's possible to generate configurations with cleacpuid that crash. It replaces an earlier patchkit that did this with special case options. v1: Initial post v2: Work around broken lguest by exporting set_cpu_cap Repost with cover letter v3: Repost. No changes to code. v4: Rebase to latest tree. Repost. v5: Fix dependency algorithm. Clean dups in table. Rebase. v6: Rebase. No changes to code. v7: Rebase. No changes to code. v8: Address all review comments. Add Reviewed-bys. Dependency checker restructured for feature->dependency Add missing dependency for AVX->AVX512F v9: Remove redundant dependency AVX512F->XSAVE Add dependencies for SHA_NI->XMM, XMM->FXSR, FXSR_OPT->FXSR