tools/testing/nvdimm: force nfit_test to depend on instrumented modules
authorDan Williams <dan.j.williams@intel.com>
Thu, 1 Feb 2018 20:28:54 +0000 (12:28 -0800)
committerDan Williams <dan.j.williams@intel.com>
Fri, 2 Feb 2018 00:49:54 +0000 (16:49 -0800)
commit0fb5c8df609eaca3cb7c24e7f91470f8dd5984ec
tree3a8fa84cc1a5c6c432e7a8572616f33bb5bafaaf
parent674d8bdec770d40288574534eab27d82bdf16b0e
tools/testing/nvdimm: force nfit_test to depend on instrumented modules

The libnvdimm unit tests will fail when they are run against the
production / in-tree version of libnvdimm.ko or nfit.ko due to
symbols not being mocked per nfit_test's expectation. For example,
nfit_test expects acpi_evaluate_dsm() to be replaced by
__wrap_acpi_evaluate_dsm() to test how acpi_nfit_ctl() responds to
different stimuli.

Create a test-only symbol name that nfit_test links against to cause
module load failures when the wrong module is present.

For example, with this change, attempts to use the wrong module will
report:

    nfit_test: Unknown symbol libnvdimm_test (err 0)

Reported-by: Dave Jiang <dave.jiang@intel.com>
Reported-by: Vishal Verma <vishal.l.verma@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
tools/testing/nvdimm/Kbuild
tools/testing/nvdimm/acpi_nfit_test.c [new file with mode: 0644]
tools/testing/nvdimm/device_dax_test.c [new file with mode: 0644]
tools/testing/nvdimm/libnvdimm_test.c [new file with mode: 0644]
tools/testing/nvdimm/pmem_test.c [new file with mode: 0644]
tools/testing/nvdimm/test/nfit.c
tools/testing/nvdimm/watermark.h [new file with mode: 0644]