Received: by 2002:a05:7412:31a9:b0:e2:908c:2ebd with SMTP id et41csp2692417rdb; Tue, 12 Sep 2023 09:14:24 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHkWx9JaPwaHiyCdnaYQP7YzZaESNOvzGCUeiCYQG0L5DUYgK/cEE1rG3a8bigo0aCGncxX X-Received: by 2002:a05:6a00:985:b0:68a:48e7:9deb with SMTP id u5-20020a056a00098500b0068a48e79debmr4821777pfg.2.1694535263888; Tue, 12 Sep 2023 09:14:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694535263; cv=none; d=google.com; s=arc-20160816; b=NO+jQ67SjL6aURxDSQ7gc+vn1LQukjCUvhWzQhm/UPfSLNyUUboqF78FthOXBQKJja 26hprLQSyX+NVON87RMh2jlNb+gFKLb05fFyKhotMLYMsImhifBlAW0P7MwtxHLFXQHz bYa2FDFCmfDca95z3vyGO6URcGyC2x4ytmSdEZiAq21mmxC8ml8OE4ag4SjAQH1ORAk8 GSDcEocV9ayvhxviDO66+32xoYyD0JA64AK7uHH+OBM2+TjPsBKLQlyVlFWjKDmpcQ9s smJGaOSS/2v1Gp7NCX0DbQmW90UcKw7TDJ7CkXT9L1OYOr0RBSJYoMJB1eBlYNxdroGn 9oAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature; bh=1buT/u3Qxf8el+7DSFCf/93bV/KH5FbtPpoNxqrXCrk=; fh=6KMAdpKnyf1uE666aFc7vKT7B0SNEx96YarZd0Q/YYs=; b=Q4ERdq+h/6ngTv1Xdy7pzcTgecAwwBhKRRYUDHBBbvVhPeTPUglaTBhMe0uEJ6JVqU qhb8DWl3XoA2QZ0rHbBy4JaKfpOXi+vQa+qrneEWwHjBqyDDYxOsKlG7mDGex6av2Spk 9ELFyGzQbZlCu3DnGB0Cy3oTVsMf0pisMKzAFWrFmsJwL9UINcchbVOCFc2XF+u+tpXE QsOv5cEaQ0dC1URBbRuWLiNGoe3Lo2x51SxSNvqiZhPoRPizRo8ZIb8G79k4+s47QzwN tKj9wNIc6ZP2JL3CeZcX8bWLmiDXzIKQrsrXGyZ5e2ZHun6JtvTsYXy3NLDtbA1aS+W2 DXvA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=WMz5OPWW; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id a4-20020a056a000c8400b0068fcf194dc2si2873591pfv.41.2023.09.12.09.14.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 Sep 2023 09:14:23 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=WMz5OPWW; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 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 (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id AC51782DD08B; Mon, 11 Sep 2023 21:38:56 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.8 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237258AbjILDlm (ORCPT + 99 others); Mon, 11 Sep 2023 23:41:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40788 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237404AbjILDla (ORCPT ); Mon, 11 Sep 2023 23:41:30 -0400 Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.151]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3CB542737; Mon, 11 Sep 2023 20:21:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1694488899; x=1726024899; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=eyBMVRJMQibKvySpIWcoHMqhgrudXfTR87m1mqfpg1c=; b=WMz5OPWWdg3DawfID1t11IfFi32OwsMLAoskPaBHC5TYH4yC4wzVRd48 +i2MD/ClvBLnCA4Li6hw+2znzjHZ9Ihn6oTuFH+SgeUxk00jI6tGvEEB9 sZifW5JXHjNvc2VhfKh5QKTEULdo9jrpjjU6hCEn2EREp+Ph8bcQ4oUxT 9cQGXRlB5XjnDYITNy6zM/8L4jWAsU7gPk8CSrIUrRTLwxQKOaCIXgZ3h +4Nk0/IUbdFsrHIcw6dHOd4LyDzKWk/inSUyiZhlJjWkX09+isYTnpWOS wZ3XFonYpTbqWeAr8EIuU2aq8C4q7yoUo4NuwSjMzEl+GwfXTU7zQSstO g==; X-IronPort-AV: E=McAfee;i="6600,9927,10830"; a="358540473" X-IronPort-AV: E=Sophos;i="6.02,245,1688454000"; d="scan'208";a="358540473" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Sep 2023 20:21:33 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10830"; a="720228698" X-IronPort-AV: E=Sophos;i="6.02,245,1688454000"; d="scan'208";a="720228698" Received: from ranerica-svr.sc.intel.com ([172.25.110.23]) by orsmga006.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Sep 2023 20:21:32 -0700 Date: Mon, 11 Sep 2023 20:23:50 -0700 From: Ricardo Neri To: Andreas Herrmann Cc: x86@kernel.org, Andreas Herrmann , Catalin Marinas , Chen Yu , Len Brown , Radu Rendec , Pierre Gondois , Pu Wen , "Rafael J. Wysocki" , Sudeep Holla , Srinivas Pandruvada , Will Deacon , Zhang Rui , stable@vger.kernel.org, Ricardo Neri , "Ravi V. Shankar" , linux-kernel@vger.kernel.org Subject: Re: [PATCH v3 0/3] x86/cacheinfo: Set the number of leaves per CPU Message-ID: <20230912032350.GA17008@ranerica-svr.sc.intel.com> References: <20230805012421.7002-1-ricardo.neri-calderon@linux.intel.com> <20230901065028.GG8103@alberich> <20230901075254.GH8103@alberich> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230901075254.GH8103@alberich> User-Agent: Mutt/1.9.4 (2018-02-28) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Mon, 11 Sep 2023 21:38:56 -0700 (PDT) On Fri, Sep 01, 2023 at 09:52:54AM +0200, Andreas Herrmann wrote: > On Fri, Sep 01, 2023 at 08:50:31AM +0200, Andreas Herrmann wrote: > > On Fri, Aug 04, 2023 at 06:24:18PM -0700, Ricardo Neri wrote: > > > Hi, > > > > Hi Ricardo, > > > > > This is v3 of a patchset to set the number of cache leaves independently > > > for each CPU. v1 and v2 can be found here [1] and here [2]. > > > > I am on CC of your patch set and glanced through it. > > Long ago I've touched related code but now I am not really up-to-date > > to do a qualified review in this area. First, I would have to look > > into documentation to refresh my memory etc. pp. > > > > I've not seen (or it escaped me) information that this was tested on a > > variety of machines that might be affected by this change. And there > > are no Tested-by-tags. > > > > Even if changes look simple and reasonable they can cause issues. > > > > Thus from my POV it would be good to have some information what tests > > were done. I am not asking to test on all possible systems but just > > knowing which system(s) was (were) used for functional testing is of > > value. > > Doing a good review -- trying to catch every flaw -- is really hard to > do. Especially when you are not actively doing development work in an > area. > > For example see > > commit e33b93650fc5 ("blk-iocost: Pass gendisk to ioc_refresh_params") > [Breno Leitao , Tue Feb 28 03:16:54 2023 -0800] > > This fixes commit > > ce57b558604e ("blk-rq-qos: make rq_qos_add and rq_qos_del more > useful") [Christoph Hellwig , Fri Feb 3 16:03:54 2023 > +0100] > > I had reviewed the latter (see > https://marc.info/?i=Y8plg6OAa4lrnyZZ@suselix) and the entire patch > series. I've compared the original code with the patch and walked > through every single hunk of the diff and tried to think it > through. The changes made sense to me. Then came the bug report(s) and > I felt that I had failed tremendously. To err is human. > > What this shows (and it is already known): with every patch new errors > are potentially introduced in the kernel. Functional, and higher > level testing can help to spot them before a kernel is deployed in the > field. > > At a higher level view this proves another thing. > Linux kernel development is a transparent example of > "peer-review-process". > > In our scientific age it is often postulated that peer review is the > way to go[1] and that it kind of guarantees that what's published, or > rolled out, is reasonable and "works". > > The above sample shows that this process will not catch all flaws and > that proper, transparent and reliable tests are required before > anything is deployed in the field. > > This is true for every branch of science. > > If it is purposely not done something is fishy. > > > [1] Also some state that it is "the only way to go" and every thing > figured out without a peer-review-process is false and can't be > trusted. Of course this is a false statement. Hi Andreas, Agreed. Testing is important. For the specific case of these patches, I booted CONFIG_PREEMPT_RT and !CONFIG_PREEMPT_RT kernels. Then I a) Ensured that the splat reported in commit 5944ce092b97 ("arch_topology: Build cacheinfo from primary CPU") was not observed. b) Ensured that /sys/devices/system/cpu/cpuX/cache is present. c) Ensured that the contents /sys/devices/system/cpu/cpuX/cache is the same before and after my patches. I tested on the following systems: Intel Alder Lake, Intel Meteor Lake, 2-socket Intel Icelake server, 2-socket Intel Cascade Lake server, 2-socket Intel Skylake server, 4-socket Intel Broadwell server, 2-socket Intel Haswell server, 2-socket AMD Rome server, and 2-socket AMD Milan server. Thanks and BR, Ricardo