mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 06:44:00 -04:00
tools/testing/cxl: Prevent cxl_test from confusing production modules
The cxl_test machinery builds modified versions of the modules in drivers/cxl/ and intercepts some of their calls to allow cxl_test to inject mock CXL topologies for test. However, if cxl_test attempts the same with production modules, fireworks ensue as Luis discovered [1]. Prevent that scenario by arranging for cxl_test to check for a "watermark" symbol in each of the modules it expects to be modified before the test can run. This turns undefined runtime behavior or crashes into a safer failure to load the cxl_test module. Link: http://lore.kernel.org/r/20221209062919.1096779-1-mcgrof@kernel.org [1] Reported-by: Luis Chamberlain <mcgrof@kernel.org> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
This commit is contained in:
@@ -24,22 +24,27 @@ obj-m += cxl_acpi.o
|
||||
cxl_acpi-y := $(CXL_SRC)/acpi.o
|
||||
cxl_acpi-y += mock_acpi.o
|
||||
cxl_acpi-y += config_check.o
|
||||
cxl_acpi-y += cxl_acpi_test.o
|
||||
|
||||
obj-m += cxl_pmem.o
|
||||
|
||||
cxl_pmem-y := $(CXL_SRC)/pmem.o
|
||||
cxl_pmem-y += $(CXL_SRC)/security.o
|
||||
cxl_pmem-y += config_check.o
|
||||
cxl_pmem-y += cxl_pmem_test.o
|
||||
|
||||
obj-m += cxl_port.o
|
||||
|
||||
cxl_port-y := $(CXL_SRC)/port.o
|
||||
cxl_port-y += config_check.o
|
||||
cxl_port-y += cxl_port_test.o
|
||||
|
||||
|
||||
obj-m += cxl_mem.o
|
||||
|
||||
cxl_mem-y := $(CXL_SRC)/mem.o
|
||||
cxl_mem-y += config_check.o
|
||||
cxl_mem-y += cxl_mem_test.o
|
||||
|
||||
obj-m += cxl_core.o
|
||||
|
||||
@@ -53,5 +58,6 @@ cxl_core-y += $(CXL_CORE_SRC)/hdm.o
|
||||
cxl_core-$(CONFIG_TRACING) += $(CXL_CORE_SRC)/trace.o
|
||||
cxl_core-$(CONFIG_CXL_REGION) += $(CXL_CORE_SRC)/region.o
|
||||
cxl_core-y += config_check.o
|
||||
cxl_core-y += cxl_core_test.o
|
||||
|
||||
obj-m += test/
|
||||
|
||||
Reference in New Issue
Block a user