Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp1988002imm; Tue, 22 May 2018 12:42:58 -0700 (PDT) X-Google-Smtp-Source: AB8JxZqwEbUJwyhrcd1nV7yNWBGaRxo+9x+zIbYzyf5sM3Rk3NRGLddj2Q0pzHpLoIWBoC3fexz7 X-Received: by 2002:a63:91c4:: with SMTP id l187-v6mr20096755pge.261.1527018178006; Tue, 22 May 2018 12:42:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527018177; cv=none; d=google.com; s=arc-20160816; b=vDgCU5vtoRfUx/Y4SJpwqYbqbF0NOXYlSB2vBOQ+KQCcFWZX02RSNw5TweTRp5/zVI OzkK7rCuzvsylh2A/ix6KUJNkhl2kKr/IjW83kQqwIKmpX7EeONB96oQaRbqxmJ+4AvG +kw50gKUraEwBjO5v3SyCI+ehnI/4DLhLejiYQbcHLOqn9nocA1FtIQcZi9Gz14E6SRv l18ocf1D4gKE2ilO8U0ye4UyiXhcrbovUgGQfwo+vpj2zSaDRODjC++4d61sHzgZMXL6 K81rQUTDVRRq5RYk+mCLYmtICpt2uSzxF9bdFqe+8W0SVI3WtpWxbdof7oWtbX6eLHk7 y6xA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=1JdnE3WDW8pzzt6iB4+UGWDsxLI/glipkq0t9h8HDeY=; b=iiFVFqSyepMjto20Y3cdAcvw2COURgr+u+lEhdAJ9Ri1UWPajPlAYwyUf6VkzzcpRy +Jm7/PwFumg8ajLoIfQawGWZxju0IO8opJde9mkHEOvAJ24E+iXk1e3oBAxV5e5TX4L1 az6V8A1wUITWkDpd28vdrMegF2EGEjl6mGhAmgD2mlLhAkHloY1/rRn/deNkUN4Ez8+Z KT9VJ+zSHxdm8jRDqHIaT9LzOybnHUr80q6DEtelCj6cya6WYpf9F3GoOWoBqs23mor/ tnzFBWfcm2eGITVGJbrmI8dp7/88FWZ+PfhIZN/sTYoAfqthzKV5iEWAIminA/OsYxR2 ZTEA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 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. [209.132.180.67]) by mx.google.com with ESMTP id z29-v6si13450270pgc.504.2018.05.22.12.42.31; Tue, 22 May 2018 12:42:57 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 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 S1752731AbeEVTje (ORCPT + 99 others); Tue, 22 May 2018 15:39:34 -0400 Received: from mga04.intel.com ([192.55.52.120]:18869 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752352AbeEVTcC (ORCPT ); Tue, 22 May 2018 15:32:02 -0400 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 22 May 2018 12:32:00 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,430,1520924400"; d="scan'208";a="226406414" Received: from rchatre-s.jf.intel.com ([10.54.70.76]) by orsmga005.jf.intel.com with ESMTP; 22 May 2018 12:32:00 -0700 From: Reinette Chatre To: tglx@linutronix.de, fenghua.yu@intel.com, tony.luck@intel.com, vikas.shivappa@linux.intel.com Cc: gavin.hindman@intel.com, jithu.joseph@intel.com, dave.hansen@intel.com, mingo@redhat.com, hpa@zytor.com, x86@kernel.org, linux-kernel@vger.kernel.org, Reinette Chatre Subject: [PATCH V4 26/38] x86/intel_rdt: Split resource group removal in two Date: Tue, 22 May 2018 04:29:14 -0700 Message-Id: <352ea45fd2e2981934cf14a2ed21e2c94a072a2a.1526987654.git.reinette.chatre@intel.com> X-Mailer: git-send-email 2.13.6 In-Reply-To: References: In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Resource groups used for pseudo-locking do not require the same work on removal as the other resource groups. The resource group removal is split in two in preparation for support of pseudo-locking resource groups. A single re-ordering occurs - the setting of the rdtgrp flag is moved to later. This flag is not used by any of the code between its original and new location. Signed-off-by: Reinette Chatre --- arch/x86/kernel/cpu/intel_rdt_rdtgroup.c | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/arch/x86/kernel/cpu/intel_rdt_rdtgroup.c b/arch/x86/kernel/cpu/intel_rdt_rdtgroup.c index 31dd9a2cc394..b7509ec336df 100644 --- a/arch/x86/kernel/cpu/intel_rdt_rdtgroup.c +++ b/arch/x86/kernel/cpu/intel_rdt_rdtgroup.c @@ -2565,6 +2565,21 @@ static int rdtgroup_rmdir_mon(struct kernfs_node *kn, struct rdtgroup *rdtgrp, return 0; } +static int rdtgroup_ctrl_remove(struct kernfs_node *kn, + struct rdtgroup *rdtgrp) +{ + rdtgrp->flags = RDT_DELETED; + list_del(&rdtgrp->rdtgroup_list); + + /* + * one extra hold on this, will drop when we kfree(rdtgrp) + * in rdtgroup_kn_unlock() + */ + kernfs_get(kn); + kernfs_remove(rdtgrp->kn); + return 0; +} + static int rdtgroup_rmdir_ctrl(struct kernfs_node *kn, struct rdtgroup *rdtgrp, cpumask_var_t tmpmask) { @@ -2590,7 +2605,6 @@ static int rdtgroup_rmdir_ctrl(struct kernfs_node *kn, struct rdtgroup *rdtgrp, cpumask_or(tmpmask, tmpmask, &rdtgrp->cpu_mask); update_closid_rmid(tmpmask, NULL); - rdtgrp->flags = RDT_DELETED; closid_free(rdtgrp->closid); free_rmid(rdtgrp->mon.rmid); @@ -2599,14 +2613,7 @@ static int rdtgroup_rmdir_ctrl(struct kernfs_node *kn, struct rdtgroup *rdtgrp, */ free_all_child_rdtgrp(rdtgrp); - list_del(&rdtgrp->rdtgroup_list); - - /* - * one extra hold on this, will drop when we kfree(rdtgrp) - * in rdtgroup_kn_unlock() - */ - kernfs_get(kn); - kernfs_remove(rdtgrp->kn); + rdtgroup_ctrl_remove(kn, rdtgrp); return 0; } -- 2.13.6