[PATCH v3 0/1] cxl/pmem: debug invalid serial number data

Yuquan Wang posted 1 patch 10 months ago
There is a newer version of this series
drivers/cxl/pmem.c           | 8 ++++++++
tools/testing/cxl/test/mem.c | 2 +-
2 files changed, 9 insertions(+), 1 deletion(-)
[PATCH v3 0/1] cxl/pmem: debug invalid serial number data
Posted by Yuquan Wang 10 months ago
Background
==========
A device with missing or invalid serial number is not compliant with the
spec. But we could still use it to create a nvdimm pmem region and set a
non-zero cookie of nd_interleave_set, for example:
  1. create a cxl pmem region interleaved with 2 devices (one with
     serial number 0 and the other with serial number 1), and the cookie
     would be non-zero/valid.
  2. create the second cxl pmem region by 1 device with no serial number
     and this region would have a non-zero cookie because the offset of
     dpa is non-zero.

Problem
=======
In a nvdimm interleave-set each device with an invalid or zero
serial number may cause pmem region initialization to fail, but in
cxl case such device could still set cookies of nd_interleave_set
and create a nvdimm pmem region.

CXL Pmem Validation
===================
This patch adds the validation of serial number in cxl pmem region creation.
The event of no serial number would cause to fail to set the cookie
and pmem region.

cxl-test
========
A mock serial number is set from the platform device id and 0 is a valid
platform device id. For cxl-test to work properly, always +1 on mock
device's serial number.
Yuquan Wang (1):
  cxl/pmem: debug invalid serial number data

 drivers/cxl/pmem.c           | 8 ++++++++
 tools/testing/cxl/test/mem.c | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

-- 
2.34.1