From patchwork Fri Aug 11 01:26:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fenghua Yu X-Patchwork-Id: 134280 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b824:0:b0:3f2:4152:657d with SMTP id z4csp813086vqi; Thu, 10 Aug 2023 19:32:48 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEqN9CO64UvdQzEli0irR5o8IUOPbL8b662QxliBN+a9JCxMFfzoGBY+PBZocB36ZNRKJdd X-Received: by 2002:aa7:d390:0:b0:522:30cc:a1f4 with SMTP id x16-20020aa7d390000000b0052230cca1f4mr657663edq.0.1691721168000; Thu, 10 Aug 2023 19:32:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1691721167; cv=none; d=google.com; s=arc-20160816; b=ix6S5HDbPfvaYH3xkgt3q52LNKZu2JjOoAKe/mSoJfbxyf/TKCckVS1LEz6SxMUR3K ITR8DMwpPSB5bbjOXFIAKaDMveeJxjD/hQDqvUMhPGNLoU/IkbDkPfnv3sQhDM0iUpHK sw9ZSkP+kwxJobuIUZncFexb98LNQGzTlsFFaDvFCI0+nYGOkC2LQv8TUBSB3b8MfgiB XSwEqYNWVAAkXqYazL01zNUyk09AuCrnf41tDnGAIVjrkZ1QpEGwbM7s1VgidaoWBJCO WEQal6nzK3E2P5YDmhdyFASitfYQhjEvBUcbQz6cwAym59Yn63qOSNNGhlNjNG+lEgJh 9wow== 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:dkim-signature; bh=/aJYmVhy1lZlfZEn1pyKI+IP8Ub0GWJUsytTfq1fItc=; fh=/5iuT7zm+1LdtyDsRT8aaoOPy5FKYhDbwG/k3GVtR/A=; b=Y+pIUjCsWsGG7cSzJTLOXM1ddBMprMjhnW3UX6rCXoZcZ5NYdf2nWurHdhOE1CpEVH 2oVpVZe5htTzOAeILdCEcG/UgtVY09MixAxgE4BNw6RJmh7xKNxY0jhT2V569AigNHGj TWG39Fd8BHD2Od/EqMgA3Za+zPJ5OuJCFlUiudkl4mdSDxikf3f00CFLpe5ItD0+nTLz qVGmhw36MpXnyGNRokw5asHkpUpa8/i0fgh/pKoQHRLAFPKBhoIBni4BKENa7WpyDHED q7KDO8vl4i7MLnZ1X8QGSGtbjh3Lp/4uJn8U7SsrT8giB8gFq0NawVOR77FRDYoyljI5 2OdQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=U6QcTb0s; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id bc22-20020a056402205600b005222b88bb90si2557821edb.133.2023.08.10.19.32.24; Thu, 10 Aug 2023 19:32:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=U6QcTb0s; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232296AbjHKB0u (ORCPT + 99 others); Thu, 10 Aug 2023 21:26:50 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40644 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229503AbjHKB0t (ORCPT ); Thu, 10 Aug 2023 21:26:49 -0400 Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.151]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2028B2D54; Thu, 10 Aug 2023 18:26:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1691717208; x=1723253208; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=6eOxzjNSdJ9xLoQ+f6WYB+DPCDQFuAVd8R3aCELZr7o=; b=U6QcTb0skvEprv6uezuukKXguxQq4x8Ipu7uH+4gW9AHBwF/nRD5aXOV aLHXJG3zE6+Mzg7IHrnj3Zm21Xags3fypsgxPLC2GH45w9FEW/Oqw38sq oGIBHH6MsLJRa2ygfFhg/6Bmu6DoJI+I/dtczpNNZDzGu8JRXO6RTR35P nEraomYh+NYXrJ9ORpQlTmntcTxOriOFJciBZNlTFrKEVGIqB5CqlSs+4 Ez/XmBHTyEWFWWdRWV7W9XWfJXre1/nnldUpKkmbk/KHOTQ0FmPZ0CKlK F4aRQfxxBK0ZIP2qfvIk2gVTfWcUImYMczq3e73co3Gy9omELPt54XiR0 w==; X-IronPort-AV: E=McAfee;i="6600,9927,10798"; a="351884241" X-IronPort-AV: E=Sophos;i="6.01,164,1684825200"; d="scan'208";a="351884241" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Aug 2023 18:26:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10798"; a="726060720" X-IronPort-AV: E=Sophos;i="6.01,164,1684825200"; d="scan'208";a="726060720" Received: from fyu1.sc.intel.com ([172.25.103.126]) by orsmga007.jf.intel.com with ESMTP; 10 Aug 2023 18:26:44 -0700 From: Fenghua Yu To: "Vinod Koul" , "Dave Jiang" Cc: dmaengine@vger.kernel.org, "linux-kernel" , Fenghua Yu Subject: [PATCH 1/2] dmaengine: idxd: Allow ATS disable update only for configurable devices Date: Thu, 10 Aug 2023 18:26:34 -0700 Message-Id: <20230811012635.535413-1-fenghua.yu@intel.com> X-Mailer: git-send-email 2.37.1 MIME-Version: 1.0 X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1773898215612661248 X-GMAIL-MSGID: 1773898215612661248 ATS disable status in a WQ is read-only if the device is not configurable. This change ensures that the ATS disable attribute can be modified via sysfs only on configurable devices. Fixes: 92de5fa2dc39 ("dmaengine: idxd: add ATS disable knob for work queues") Signed-off-by: Fenghua Yu Reviewed-by: Dave Jiang --- Applied cleanly to https://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine next drivers/dma/idxd/sysfs.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/dma/idxd/sysfs.c b/drivers/dma/idxd/sysfs.c index d16c16445c4f..66c89b07b3f7 100644 --- a/drivers/dma/idxd/sysfs.c +++ b/drivers/dma/idxd/sysfs.c @@ -1088,12 +1088,16 @@ static ssize_t wq_ats_disable_store(struct device *dev, struct device_attribute const char *buf, size_t count) { struct idxd_wq *wq = confdev_to_wq(dev); + struct idxd_device *idxd = wq->idxd; bool ats_dis; int rc; if (wq->state != IDXD_WQ_DISABLED) return -EPERM; + if (!test_bit(IDXD_FLAG_CONFIGURABLE, &idxd->flags)) + return -EPERM; + rc = kstrtobool(buf, &ats_dis); if (rc < 0) return rc; From patchwork Fri Aug 11 01:26:35 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fenghua Yu X-Patchwork-Id: 134290 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b824:0:b0:3f2:4152:657d with SMTP id z4csp824378vqi; Thu, 10 Aug 2023 20:08:27 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGwcd1dFuClhLpxz3ks1swMR6fCNzyI3XUSCUge0NGriljM5ogOqyq9EFmUwvT274xDPyo/ X-Received: by 2002:a17:906:53d0:b0:99c:55a9:3925 with SMTP id p16-20020a17090653d000b0099c55a93925mr563636ejo.24.1691723307325; Thu, 10 Aug 2023 20:08:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1691723307; cv=none; d=google.com; s=arc-20160816; b=IQU+E6xVAenwZDfbgMKCW+zMiwAE1Euwa8rySZkaEdCaE0Cj8r5j3iHs46LYu5indm He5eXou+qUYAxK2JNzxA7exu+8IkxcmLkkUdPX5Qp6xHlX4UEhZDPBj1bM1qkqO6a9m7 W21iBNB8MvHDVZ7rNuQJUa603RJiNF+58JhDGDhY3l13JSQiZt0BJs2Pl5vglVPfDIPs bZ7HeC5D7ozW8/dXr2ToLSQwbm+3N//NAjIarHHCio0FkSycbZ4WZ76GYf7xtaHtLOY8 t4tk+GJocRLzei63Kq3xPU8X2guta8CMB7/AH1odfoSunqrr8FUW06e279cQBrOVYOWM W+qQ== 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 :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=4dhfV4ZSbQWAGltM0iPphrk1i/kj7F7EZuL46v86fbU=; fh=/5iuT7zm+1LdtyDsRT8aaoOPy5FKYhDbwG/k3GVtR/A=; b=NI9R9FWubxDIKl5LateQXYYlaGcnklcWmrTCkOky7cBP3I03VVzUzLxml54sUt1BrK H7wr0sJtZu1ZMUij1puzk20yzlMOzCYvi5+G6MryGRU6LpBjF+BZeo+wB035SuhB4PDg bZ99awm0TnU76thlGNbY/uDZNY1rpfYWj219Ibyjv8yTNu6xPYD/yel5vy3JHSzoiy2W YO9z0bsciyo218JmGh9JOiIZXO3k5OY2uG1ih0Rxe4RaPUOZOvEOAtClFcxungRnua03 JfexI2ptqz7Hg9QO+OB8QpAZ0vE5VJ9AHDfoGftef67VYOqigu/TBaPnMZdBmd73z4Po 1NmQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=TwDPjNVb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id oz2-20020a170906cd0200b0099bd8c1f67csi2637898ejb.499.2023.08.10.20.08.02; Thu, 10 Aug 2023 20:08:27 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=TwDPjNVb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232300AbjHKB0v (ORCPT + 99 others); Thu, 10 Aug 2023 21:26:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40654 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230217AbjHKB0t (ORCPT ); Thu, 10 Aug 2023 21:26:49 -0400 Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.151]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4F7412D58; Thu, 10 Aug 2023 18:26:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1691717209; x=1723253209; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=CfqmXM4kRd4y1ZmEZGFxskOY7Nb1GwQfuLJ1S4oyD7w=; b=TwDPjNVbaOP7dJBgklf2JW+S1dCOoTTGdyrAxMPVf2SGYtjYk1bNg28W RbziWVnKO00/OGvesuB2YQhB5xqRGkdI5D3N+1SoNFQv7FIotln0HdJPY V1cBlESSM0YfRAUJBYdAzUlBJaxpkZCcgWWNdOnBnjFXiYeMIqyCFUv5V d+zpWQH8YvXphaYQyycmQTph7bpANhnuodAAOy00JKHDSnrztyKg8RKBk Nk3uQ4Sl0XPtVKqiVQv6tAdYWvm1GNSCpw5IMdxipKKKzs2wnj9HDCmR7 Qa89n5CE1kLjF3WOXq0Jdl0E1SlAnax9QGfD6PL5QkfGva+S2U7oSdJoF g==; X-IronPort-AV: E=McAfee;i="6600,9927,10798"; a="351884243" X-IronPort-AV: E=Sophos;i="6.01,164,1684825200"; d="scan'208";a="351884243" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Aug 2023 18:26:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10798"; a="726060723" X-IronPort-AV: E=Sophos;i="6.01,164,1684825200"; d="scan'208";a="726060723" Received: from fyu1.sc.intel.com ([172.25.103.126]) by orsmga007.jf.intel.com with ESMTP; 10 Aug 2023 18:26:45 -0700 From: Fenghua Yu To: "Vinod Koul" , "Dave Jiang" Cc: dmaengine@vger.kernel.org, "linux-kernel" , Fenghua Yu Subject: [PATCH 2/2] dmaengine: idxd: Fix issues with PRS disable sysfs knob Date: Thu, 10 Aug 2023 18:26:35 -0700 Message-Id: <20230811012635.535413-2-fenghua.yu@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230811012635.535413-1-fenghua.yu@intel.com> References: <20230811012635.535413-1-fenghua.yu@intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1773900458513024868 X-GMAIL-MSGID: 1773900458513024868 There are two issues in the current PRS disable sysfs store function wq_prs_disable_store(): 1. Since PRS disable knob is invisible if PRS disable is not supported in WQ, it's redundant to check PRS support again in the store function again. Remove the redundant PRS support check. 2. Since PRS disable is read-only when the device is not configurable, PRS disable cannot be changed on the device. Add device configurable check in the store function. Fixes: f2dc327131b5 ("dmaengine: idxd: add per wq PRS disable") Signed-off-by: Fenghua Yu Reviewed-by: Dave Jiang --- Applied cleanly to https://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine next drivers/dma/idxd/sysfs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/dma/idxd/sysfs.c b/drivers/dma/idxd/sysfs.c index 66c89b07b3f7..a5c3eb434832 100644 --- a/drivers/dma/idxd/sysfs.c +++ b/drivers/dma/idxd/sysfs.c @@ -1131,8 +1131,8 @@ static ssize_t wq_prs_disable_store(struct device *dev, struct device_attribute if (wq->state != IDXD_WQ_DISABLED) return -EPERM; - if (!idxd->hw.wq_cap.wq_prs_support) - return -EOPNOTSUPP; + if (!test_bit(IDXD_FLAG_CONFIGURABLE, &idxd->flags)) + return -EPERM; rc = kstrtobool(buf, &prs_dis); if (rc < 0)