mirror of
https://github.com/torvalds/linux.git
synced 2026-09-14 08:01:12 +02:00
cxl/test: Assign one mock memdev a full-width serial number
Mock memdev serial numbers have historically been derived from pdev->id, leaving them single-digit. As a result they never exercised either the decimal-vs-hex security-key lookup or unsigned formatting of large serial numbers. Give one mock memdev a full-width serial with bit 63 set. This mirrors real hardware (for example, Montage devices) and provides a test device that exposes both the hexadecimal-vs-decimal and signed-vs- unsigned formatting differences. pdev->id 7 is unused by the auto-region topology so the larger serial does not affect existing tests. This enables adding a new test case to cxl-security.sh that verify auto-unlock using a mock device whose serial exposes both formatting differences. Signed-off-by: Alison Schofield <alison.schofield@intel.com> Link: https://patch.msgid.link/3e569a748fce4424b8622032fbffc298d92153b9.1784924949.git.alison.schofield@intel.com Signed-off-by: Dave Jiang <dave.jiang@intel.com>
This commit is contained in:
parent
95a84b7cb4
commit
94d84e3d89
|
|
@ -1713,6 +1713,7 @@ static int cxl_mock_mem_probe(struct platform_device *pdev)
|
|||
struct cxl_mockmem_data *mdata;
|
||||
struct cxl_mailbox *cxl_mbox;
|
||||
struct cxl_dpa_info range_info = { 0 };
|
||||
u64 serial;
|
||||
int rc;
|
||||
|
||||
/* Increase async probe race window */
|
||||
|
|
@ -1739,7 +1740,19 @@ static int cxl_mock_mem_probe(struct platform_device *pdev)
|
|||
if (rc)
|
||||
return rc;
|
||||
|
||||
mds = cxl_memdev_state_create(dev, pdev->id + 1, 0);
|
||||
/*
|
||||
* Mock serials have historically been derived from pdev->id and stayed
|
||||
* single-digit, so they never exercised either decimal-vs-hex key
|
||||
* lookup or unsigned formatting. Give one mock device a full-width
|
||||
* serial with bit 63 set, matching real hardware such as Montage CXL
|
||||
* devices. pdev->id 7 is unused by the auto-region topology.
|
||||
*/
|
||||
if (pdev->id == 7)
|
||||
serial = 0x8a34567890abcdef;
|
||||
else
|
||||
serial = pdev->id + 1;
|
||||
|
||||
mds = cxl_memdev_state_create(dev, serial, 0);
|
||||
if (IS_ERR(mds))
|
||||
return PTR_ERR(mds);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user