Message ID | 20231223032548.1680738-1-david.e.box@linux.intel.com |
---|---|
Headers |
Return-Path: <linux-kernel+bounces-10258-ouuuleilei=gmail.com@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:2483:b0:fb:cd0c:d3e with SMTP id q3csp1467746dyi; Fri, 22 Dec 2023 19:26:30 -0800 (PST) X-Google-Smtp-Source: AGHT+IGOLK9bHvb0OLLKask3e/rkhdhUXlJ+TIPO+dTR2S4eMOvwdAwRbHDX6CyJxOSn66bGdZx8 X-Received: by 2002:a62:e301:0:b0:6d9:a32b:a27f with SMTP id g1-20020a62e301000000b006d9a32ba27fmr192859pfh.45.1703301990343; Fri, 22 Dec 2023 19:26:30 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1703301990; cv=none; d=google.com; s=arc-20160816; b=JaMMZ0yMbTZfVCrJ2N0KgOmpxvil3AOZJvPDsh59PrO94fjxd+dZ3y3wfDxkMkDzGm blMS3h2eq9WrdgPBfAM9VDe5Zh9YpqkWbBnakNbNYPVqNukRkCtDKmHtbWLZqeGw5Bw/ Mao6iQIxX9iNayMd4gPoVdS9bG/ooSnlTU7qymZYEkdB+LACQpLOxWRB6NX5z4RX1hds 6f2kSjzUkU1TOxhoFYGvKZXRE3T6vgggHL9yoFWzvZnHfzmpLJRaSvVcapAY0XDJyeEX ZqXRZCbh3HrwQUvRrRcQALxY7lR88HaZIOB/5vQaN6JNeArxQq2pmwNqaJFwgAz4J+vr 9trA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:to:from :dkim-signature; bh=gPb2SVZfpQht2JgfiqHS3OWwGqcyh1fYEpCXxxFXQHw=; fh=yyAGbTikx/RHwePVMTF7XiY858Fr2O1Lml8NjpI1ECE=; b=Gyp8fW+Sw6NGO0Rc8k4h3DAUP07GAJYpIuuIDNI9hGnTft8oxrn1oZLp6/0yG06YfF YoeFxzmlRfQzrQb1ii2T130C0KlFz4/+pRSVYGMdHcIfBcDckLDegxIFwuaeDaLaJVPm 5NTNrfvfwB410WGtlWp+GJot/1+MKtIKF80BoGrjxTeaY2ehQOY+VNf3axVmLxlmLUDC CZxS97d+K2+HAPerPAwLMMrLejASCHbbgzlqagYi5E8wyIBBSbj0wUUhVUejVhv2Y5Gp m2tQogvxp7FyBYdd+T+m5aZzFRR+4M0wH6wc1NRkHrTc/Dcr4QN3vPDXBiF9EqcAWYFp W2vQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=Atvm423l; spf=pass (google.com: domain of linux-kernel+bounces-10258-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-10258-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id g21-20020a63f415000000b005be03f0da7csi1486043pgi.61.2023.12.22.19.26.30 for <ouuuleilei@gmail.com> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 22 Dec 2023 19:26:30 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-10258-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=Atvm423l; spf=pass (google.com: domain of linux-kernel+bounces-10258-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-10258-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 20EDE286136 for <ouuuleilei@gmail.com>; Sat, 23 Dec 2023 03:26:30 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 577128836; Sat, 23 Dec 2023 03:25:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="Atvm423l" X-Original-To: linux-kernel@vger.kernel.org Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 05964A59; Sat, 23 Dec 2023 03:25:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1703301951; x=1734837951; h=from:to:subject:date:message-id:mime-version: content-transfer-encoding; bh=4M9SYNQomWn9fS80p33fIleeHiF+NBXr8fhqDr8znwY=; b=Atvm423lUkUE8HjN/tr7e3y7qHHErv+lTre9Ik/lAVs06JOKeMz7stXh 3MF2G8dXNfMGaD4klDiCRqHp5aJkhCQYrtJMQnvisrKoagvFAsSFrcJd6 n7gcIrZMzg+Rxc8kXTVYq0D1Ukleo0fywMW8SlwAkqWfGf3g/eAmdxaLD E8qv6WEHggwFmrMvsy+YO6K25ge22PfnINuxYQIfjeBTLjA1G2AOvjs4h X22VH9tNXxLi2tV0/T5BYGv4WGXSaTuVE46PEshLAjXq6t8VK+FYuE1aj 4XNn+9Fr9Kg/Q2393tihULXF2CHQlFa7LJIHuWpOcTCbWBmEVR+/OSQE5 w==; X-IronPort-AV: E=McAfee;i="6600,9927,10932"; a="462619287" X-IronPort-AV: E=Sophos;i="6.04,298,1695711600"; d="scan'208";a="462619287" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Dec 2023 19:25:51 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10932"; a="811534572" X-IronPort-AV: E=Sophos;i="6.04,298,1695711600"; d="scan'208";a="811534572" Received: from linux.intel.com ([10.54.29.200]) by orsmga001.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Dec 2023 19:25:51 -0800 Received: from debox1-desk4.intel.com (unknown [10.209.86.110]) by linux.intel.com (Postfix) with ESMTP id 19518580CC6; Fri, 22 Dec 2023 19:25:51 -0800 (PST) From: "David E. Box" <david.e.box@linux.intel.com> To: david.e.box@linux.intel.com, hdegoede@redhat.com, ilpo.jarvinen@linux.intel.com, rajvi.jingar@linux.intel.com, platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 0/8] Intel PMC Core GBE LTR regression fix Date: Fri, 22 Dec 2023 19:25:40 -0800 Message-Id: <20231223032548.1680738-1-david.e.box@linux.intel.com> X-Mailer: git-send-email 2.34.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: <linux-kernel.vger.kernel.org> List-Subscribe: <mailto:linux-kernel+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-kernel+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1786041587846977371 X-GMAIL-MSGID: 1786041587846977371 |
Series |
Intel PMC Core GBE LTR regression fix
|
|
Message
David E. Box
Dec. 23, 2023, 3:25 a.m. UTC
This patch series addresses the network performance regression caused by commit 804951203aa5 ("platform/x86:intel/pmc: Combine core_init() and core_configure()"). Unfortunately, the regression is included in the recent Lunar Lake and Arrow Lake support patches in the review branch. Patches 1 and 2 remove the LTR ignore without a fix. They may be folded into the respective enabling patches indicated in the changelog. This is done so that the next patches fixing the regression can be backported to stable kernels with fewer, if any, conflicts. Patches 3 and 4 provide the support needed for Patch 5 to move the GBE LTR ignore from probe-time to suspend/resume time. All three carry the same Fixes tag so that the stable kernels can pick them up without causing a separate suspend-time PC10 regression. Patches 6 and 7 then add the LTR suspend/resume fix for Arrow Lake and Lunar Lake. Of course, they cannot be folded into the enabling patches unless the LTR fixes (3-5) are applied before. Sorry about this :(. Patch 8 finally addresses an unrelated sparse warning for a missing extern introduced in the commit mentioned in that changelog. This could be folded back into that commit if desired. Note that there is no current solution to address the loss of runtime PC10 with these patches. With a network cable attached to the PCH LAN, the best that can be achieved is PC8/9. However, this is unlikely to affect many mobile systems which tend not to use LAN and if they do, not the PCH LAN. David E. Box (8): platform/x86/intel/pmc/arl.c: Remove probe time LTR ignore platform/x86/intel/pmc/lnl.c: Remove probe time LTR ignore platform/x86/intel/pmc: Add suspend callback platform/x86/intel/pmc: Allow renabling LTRs platform/x86/intel/pmc: Move GBE LTR ignore to suspend callback platform/x86/intel/pmc/arl: Add GBE LTR ignore during suspend platform/x86/intel/pmc/lnl: Add GBE LTR ignore during suspend platform/x86/intel/pmc: Add missing extern drivers/platform/x86/intel/pmc/adl.c | 9 +++------ drivers/platform/x86/intel/pmc/arl.c | 9 +++------ drivers/platform/x86/intel/pmc/cnp.c | 26 ++++++++++++++++++++------ drivers/platform/x86/intel/pmc/core.c | 12 +++++++++--- drivers/platform/x86/intel/pmc/core.h | 9 ++++++++- drivers/platform/x86/intel/pmc/lnl.c | 9 +++------ drivers/platform/x86/intel/pmc/mtl.c | 9 +++------ drivers/platform/x86/intel/pmc/tgl.c | 8 +++----- 8 files changed, 52 insertions(+), 39 deletions(-) base-commit: 119652b855e6c96676406ee9a7f535f4db4e8eff
Comments
On Fri, 22 Dec 2023, David E. Box wrote: > This patch series addresses the network performance regression caused by > commit 804951203aa5 ("platform/x86:intel/pmc: Combine core_init() and > core_configure()"). > > Unfortunately, the regression is included in the recent Lunar Lake and > Arrow Lake support patches in the review branch. Patches 1 and 2 remove the > LTR ignore without a fix. They may be folded into the respective enabling > patches indicated in the changelog. This is done so that the next patches > fixing the regression can be backported to stable kernels with fewer, if > any, conflicts. > > Patches 3 and 4 provide the support needed for Patch 5 to move the GBE LTR > ignore from probe-time to suspend/resume time. All three carry the same > Fixes tag so that the stable kernels can pick them up without causing a > separate suspend-time PC10 regression. > > Patches 6 and 7 then add the LTR suspend/resume fix for Arrow Lake and > Lunar Lake. Of course, they cannot be folded into the enabling patches > unless the LTR fixes (3-5) are applied before. Sorry about this :(. Wow, this is messy... So the best order would be placing 3-5 before these Arrow Lake and Lunar Lake commits in for-next: 119652b855e6 ("platform/x86/intel/pmc: Add Lunar Lake M support to intel_pmc_core driver") f34dcf397286 ("platform/x86/intel/pmc: Add Arrow Lake S support to intel_pmc_core driver") ? And then folding 1-2 and 6-7 into those respective commits? It makes me wonder though why those two commits couldn't have been delayed slightly to get these fixes included first... :-/
Hi, On 12/27/23 19:14, Ilpo Järvinen wrote: > On Fri, 22 Dec 2023, David E. Box wrote: > >> This patch series addresses the network performance regression caused by >> commit 804951203aa5 ("platform/x86:intel/pmc: Combine core_init() and >> core_configure()"). >> >> Unfortunately, the regression is included in the recent Lunar Lake and >> Arrow Lake support patches in the review branch. Patches 1 and 2 remove the >> LTR ignore without a fix. They may be folded into the respective enabling >> patches indicated in the changelog. This is done so that the next patches >> fixing the regression can be backported to stable kernels with fewer, if >> any, conflicts. >> >> Patches 3 and 4 provide the support needed for Patch 5 to move the GBE LTR >> ignore from probe-time to suspend/resume time. All three carry the same >> Fixes tag so that the stable kernels can pick them up without causing a >> separate suspend-time PC10 regression. >> >> Patches 6 and 7 then add the LTR suspend/resume fix for Arrow Lake and >> Lunar Lake. Of course, they cannot be folded into the enabling patches >> unless the LTR fixes (3-5) are applied before. Sorry about this :(. > > Wow, this is messy... > > So the best order would be placing 3-5 before these Arrow Lake and Lunar > Lake commits in for-next: > 119652b855e6 ("platform/x86/intel/pmc: Add Lunar Lake M support to intel_pmc_core driver") > f34dcf397286 ("platform/x86/intel/pmc: Add Arrow Lake S support to intel_pmc_core driver") > ? And then folding 1-2 and 6-7 into those respective commits? > > It makes me wonder though why those two commits couldn't have been delayed > slightly to get these fixes included first... :-/ To untangle this mess I have squashed patches 1-2 into the original commits in for-next, so that there won't be a conflict between next and fixes when merging patches 3-5 into fixes. Ilpo can you pick-up patches 3-5 for the fixes branch ? And maybe also "platform/x86: p2sb: Allow p2sb_bar() calls during PCI device probe" fix ? I know you have a small review comment on this patch, but IMHO waiting for the small unrelated cleanup to be split out is not worth delaying this deadlock fix. As for the missing fixes tag I believe that should be: Fixes: 9745fb07474f ("platform/x86/intel: Add Primary to Sideband (P2SB) bridge support") And then do one more fixes pull-request for the GBT LTR fixes + the P2SB deadlock fix ? I know it is the holiday season, but if you feel up to it, it would be nice to get those fixes on their way to Linus and the stable kernels a bit earlier then before 6.8-rc1 . I'll merge patches 6-8 into for-next then after back-merging the fixes. Regards, Hans
On Thu, 28 Dec 2023, Hans de Goede wrote: > On 12/27/23 19:14, Ilpo Järvinen wrote: > > On Fri, 22 Dec 2023, David E. Box wrote: > > > >> This patch series addresses the network performance regression caused by > >> commit 804951203aa5 ("platform/x86:intel/pmc: Combine core_init() and > >> core_configure()"). > >> > >> Unfortunately, the regression is included in the recent Lunar Lake and > >> Arrow Lake support patches in the review branch. Patches 1 and 2 remove the > >> LTR ignore without a fix. They may be folded into the respective enabling > >> patches indicated in the changelog. This is done so that the next patches > >> fixing the regression can be backported to stable kernels with fewer, if > >> any, conflicts. > >> > >> Patches 3 and 4 provide the support needed for Patch 5 to move the GBE LTR > >> ignore from probe-time to suspend/resume time. All three carry the same > >> Fixes tag so that the stable kernels can pick them up without causing a > >> separate suspend-time PC10 regression. > >> > >> Patches 6 and 7 then add the LTR suspend/resume fix for Arrow Lake and > >> Lunar Lake. Of course, they cannot be folded into the enabling patches > >> unless the LTR fixes (3-5) are applied before. Sorry about this :(. > > > > Wow, this is messy... > > > > So the best order would be placing 3-5 before these Arrow Lake and Lunar > > Lake commits in for-next: > > 119652b855e6 ("platform/x86/intel/pmc: Add Lunar Lake M support to intel_pmc_core driver") > > f34dcf397286 ("platform/x86/intel/pmc: Add Arrow Lake S support to intel_pmc_core driver") > > ? And then folding 1-2 and 6-7 into those respective commits? > > > > It makes me wonder though why those two commits couldn't have been delayed > > slightly to get these fixes included first... :-/ > > To untangle this mess I have squashed patches 1-2 into the original > commits in for-next, so that there won't be a conflict > between next and fixes when merging patches 3-5 into fixes. Dream on, there will be conflicts, rest assured... > Ilpo can you pick-up patches 3-5 for the fixes branch ? I've now done that and resolved a few conflicts while doing so which you'll encounter while back-merging. > And maybe also "platform/x86: p2sb: Allow p2sb_bar() calls during PCI > device probe" fix ? I know you have a small review comment on this patch, > but IMHO waiting for the small unrelated cleanup to be split out is not > worth delaying this deadlock fix. As for the missing fixes tag I believe > that should be: > > Fixes: 9745fb07474f ("platform/x86/intel: Add Primary to Sideband (P2SB) bridge support") > > And then do one more fixes pull-request for the GBT LTR fixes + > the P2SB deadlock fix ? > > I know it is the holiday season, but if you feel up to it, > it would be nice to get those fixes on their way to Linus > and the stable kernels a bit earlier then before 6.8-rc1 . They're in the hands of lkp. > I'll merge patches 6-8 into for-next then after back-merging > the fixes.