Message ID | 20250306164448.3354845-12-rrichter@amd.com |
---|---|
State | New |
Headers | show |
Series | cxl: Address translation support, part 1: Cleanups and refactoring | expand |
Robert Richter wrote: > 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> > Tested-by: Gregory Price <gourry@gourry.net> LGTM Reviewed-by: Dan Williams <dan.j.williams@intel.com>
diff --git a/drivers/cxl/core/region.c b/drivers/cxl/core/region.c index cf58ee284696..bd1ce9d8bed7 100644 --- a/drivers/cxl/core/region.c +++ b/drivers/cxl/core/region.c @@ -2162,6 +2162,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; }