OpenCloudOS-Kernel/tools/testing/nvdimm
Dan Williams 5d8beee20d x86, nfit_test: Add unit test for memcpy_mcsafe()
Given the fact that the ACPI "EINJ" (error injection) facility is not
universally available, implement software infrastructure to validate the
memcpy_mcsafe() exception handling implementation.

For each potential read exception point in memcpy_mcsafe(), inject a
emulated exception point at the address identified by 'mcsafe_inject'
variable. With this infrastructure implement a test to validate that the
'bytes remaining' calculation is correct for a range of various source
buffer alignments.

This code is compiled out by default. The CONFIG_MCSAFE_DEBUG
configuration symbol needs to be manually enabled by editing
Kconfig.debug. I.e. this functionality can not be accidentally enabled
by a user / distro, it's only for development.

Cc: <x86@kernel.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Reported-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2018-05-22 23:18:31 -07:00
..
test x86, nfit_test: Add unit test for memcpy_mcsafe() 2018-05-22 23:18:31 -07:00
Kbuild tools/testing/nvdimm: force nfit_test to depend on instrumented modules 2018-02-01 16:49:54 -08:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
acpi_nfit_test.c tools/testing/nvdimm: force nfit_test to depend on instrumented modules 2018-02-01 16:49:54 -08:00
config_check.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
dax-dev.c Merge branch 'for-4.12/dax' into libnvdimm-for-next 2017-05-04 23:38:43 -07:00
device_dax_test.c tools/testing/nvdimm: force nfit_test to depend on instrumented modules 2018-02-01 16:49:54 -08:00
libnvdimm_test.c tools/testing/nvdimm: force nfit_test to depend on instrumented modules 2018-02-01 16:49:54 -08:00
pmem-dax.c pmem: add dax_operations support 2017-04-19 15:14:35 -07:00
pmem_test.c tools/testing/nvdimm: force nfit_test to depend on instrumented modules 2018-02-01 16:49:54 -08:00
watermark.h tools/testing/nvdimm: force nfit_test to depend on instrumented modules 2018-02-01 16:49:54 -08:00