Linux CXL
 help / color / mirror / Atom feed
From: Robert Richter <rrichter@amd.com>
To: Alison Schofield <alison.schofield@intel.com>,
	Vishal Verma <vishal.l.verma@intel.com>,
	Ira Weiny <ira.weiny@intel.com>,
	Dan Williams <dan.j.williams@intel.com>,
	Jonathan Cameron <Jonathan.Cameron@huawei.com>,
	Dave Jiang <dave.jiang@intel.com>,
	Davidlohr Bueso <dave@stgolabs.net>
Cc: <linux-cxl@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	Gregory Price <gourry@gourry.net>,
	"Fabio M. De Francesco" <fabio.m.de.francesco@linux.intel.com>,
	Terry Bowman <terry.bowman@amd.com>,
	Robert Richter <rrichter@amd.com>
Subject: [PATCH v5 12/14] cxl/region: Add a dev_warn() on registration failure
Date: Mon, 28 Apr 2025 23:43:15 +0200	[thread overview]
Message-ID: <20250428214318.1682212-13-rrichter@amd.com> (raw)
In-Reply-To: <20250428214318.1682212-1-rrichter@amd.com>

Esp. in complex system configurations with multiple endpoints and
interleaving setups it is hard to detect region setup failures as its
registration may silently fail. Add messages to show registration
failures.

Example log message:

  cxl region5: region sort successful
  cxl region5: mem0:endpoint5 decoder5.0 add: mem0:decoder5.0 @ 0 next: none nr_eps: 1 nr_targets: 1
  cxl_port endpoint5: decoder5.0: range: 0x22350000000-0x2634fffffff iw: 1 ig: 256
  cxl region5: pci0000:e0:port1 decoder1.2 add: mem0:decoder5.0 @ 0 next: mem0 nr_eps: 1 nr_targets: 1
  cxl region5: pci0000:e0:port1 iw: 1 ig: 256
  cxl region5: pci0000:e0:port1: decoder1.2 expected 0000:e0:01.2 at 0
  cxl endpoint5: failed to attach decoder5.0 to region5: -6
  cxl_port endpoint5: probe: 0

Signed-off-by: Robert Richter <rrichter@amd.com>
Reviewed-by: Gregory Price <gourry@gourry.net>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Fabio M. De Francesco <fabio.m.de.francesco@linux.intel.com>
Tested-by: Gregory Price <gourry@gourry.net>
---
 drivers/cxl/core/region.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/cxl/core/region.c b/drivers/cxl/core/region.c
index ef5408301714..560c447d8136 100644
--- a/drivers/cxl/core/region.c
+++ b/drivers/cxl/core/region.c
@@ -2169,6 +2169,12 @@ static int attach_target(struct cxl_region *cxlr,
 	rc = cxl_region_attach(cxlr, cxled, pos);
 	up_read(&cxl_dpa_rwsem);
 	up_write(&cxl_region_rwsem);
+
+	if (rc)
+		dev_warn(cxled->cxld.dev.parent,
+			"failed to attach %s to %s: %d\n",
+			dev_name(&cxled->cxld.dev), dev_name(&cxlr->dev), rc);
+
 	return rc;
 }
 
-- 
2.39.5


  parent reply	other threads:[~2025-04-28 21:44 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-28 21:43 [PATCH v5 00/14] cxl: Address translation support, part 1: Cleanups and refactoring Robert Richter
2025-04-28 21:43 ` [PATCH v5 01/14] cxl: Remove else after return Robert Richter
2025-04-29  1:35   ` Alison Schofield
2025-04-28 21:43 ` [PATCH v5 02/14] cxl/pci: Moving code in cxl_hdm_decode_init() Robert Richter
2025-04-28 22:07   ` Dave Jiang
2025-04-29 15:17   ` Jonathan Cameron
2025-04-28 21:43 ` [PATCH v5 03/14] cxl/pci: Add comments to cxl_hdm_decode_init() Robert Richter
2025-04-28 22:08   ` Dave Jiang
2025-04-28 21:43 ` [PATCH v5 04/14] cxl: Introduce parent_port_of() helper Robert Richter
2025-04-28 21:43 ` [PATCH v5 05/14] cxl/region: Rename function to cxl_port_pick_region_decoder() Robert Richter
2025-04-28 22:24   ` Dave Jiang
2025-04-29 15:31   ` Jonathan Cameron
2025-05-07 15:15     ` Jonathan Cameron
2025-05-05 17:20   ` Fabio M. De Francesco
2025-04-28 21:43 ` [PATCH v5 06/14] cxl/region: Avoid duplicate call of cxl_port_pick_region_decoder() Robert Richter
2025-04-28 22:28   ` Dave Jiang
2025-04-29 15:34   ` Jonathan Cameron
2025-05-05 17:51   ` Fabio M. De Francesco
2025-04-28 21:43 ` [PATCH v5 07/14] cxl/region: Move find_cxl_root() to cxl_add_to_region() Robert Richter
2025-04-28 21:43 ` [PATCH v5 08/14] cxl/port: Replace put_cxl_root() by a cleanup helper Robert Richter
2025-04-28 22:27   ` Gregory Price
2025-04-28 23:03   ` Dave Jiang
2025-04-29 15:38   ` Jonathan Cameron
2025-04-29 15:38   ` Jonathan Cameron
2025-05-05 17:55   ` Fabio M. De Francesco
2025-04-28 21:43 ` [PATCH v5 09/14] cxl/region: Factor out code to find the root decoder Robert Richter
2025-04-28 21:43 ` [PATCH v5 10/14] cxl/region: Factor out code to find a root decoder's region Robert Richter
2025-04-28 21:43 ` [PATCH v5 11/14] cxl/region: Add function to find a port's switch decoder by range Robert Richter
2025-05-05 18:18   ` Fabio M. De Francesco
2025-04-28 21:43 ` Robert Richter [this message]
2025-04-28 21:43 ` [PATCH v5 13/14] cxl/region: Add a dev_err() on missing target list entries Robert Richter
2025-04-28 21:43 ` [PATCH v5 14/14] cxl: Add a dev_dbg() when a decoder was added to a port Robert Richter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250428214318.1682212-13-rrichter@amd.com \
    --to=rrichter@amd.com \
    --cc=Jonathan.Cameron@huawei.com \
    --cc=alison.schofield@intel.com \
    --cc=dan.j.williams@intel.com \
    --cc=dave.jiang@intel.com \
    --cc=dave@stgolabs.net \
    --cc=fabio.m.de.francesco@linux.intel.com \
    --cc=gourry@gourry.net \
    --cc=ira.weiny@intel.com \
    --cc=linux-cxl@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=terry.bowman@amd.com \
    --cc=vishal.l.verma@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox