lkml.org 
[lkml]   [2016]   [Dec]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Subject[PATCH 0/5] acpi, nfit: acpi_nfit_ctl() corner case fixes + tests
From
Date
>From [PATCH 5/5] tools/testing/nvdimm: unit test acpi_nfit_ctl():
---

A recent flurry of bug discoveries in the nfit driver's DSM marshalling
routine has highlighted the fact that we do not have unit test coverage
for this routine. Add a self-test of acpi_nfit_ctl() routine before
probing the "nfit_test.0" device. This mocks stimulus to acpi_nfit_ctl()
and if any of the tests fail "nfit_test.0" will be unavailable causing
the rest of the tests to not run / fail.

This unit test will also be a place to land reproductions of quirky
BIOS behavior discovered in the field and ensure the kernel does not
regress against implementations it has seen in practice.

---

The problems addressed in this round of fixes date are concentrated
around the variable-length output from the ARS (Address Range Scrub)
Status command, and the proper handling of per-command extended status
values.

They are urgent as improper handling of ARS commands can lead to a
platform that fails to boot. If there are media errors in the boot path
on a platform that does not support machine-check recovery we rely on
the ARS to inform the pmem driver which address ranges may trigger a
machine-check when read.

---

Dan Williams (4):
acpi, nfit, libnvdimm: fix / harden ars_status output length handling
acpi, nfit: validate ars_status output buffer size
acpi, nfit: fix bus vs dimm confusion in xlat_status
tools/testing/nvdimm: unit test acpi_nfit_ctl()

Vishal Verma (1):
acpi, nfit: fix extended status translations for ACPI DSMs


drivers/acpi/nfit/core.c | 54 +++++---
drivers/acpi/nfit/nfit.h | 2
drivers/nvdimm/bus.c | 25 +++
include/linux/libnvdimm.h | 2
tools/testing/nvdimm/Kbuild | 1
tools/testing/nvdimm/test/iomap.c | 23 +++
tools/testing/nvdimm/test/nfit.c | 236 ++++++++++++++++++++++++++++++++-
tools/testing/nvdimm/test/nfit_test.h | 8 +
8 files changed, 324 insertions(+), 27 deletions(-)

\
 
 \ /
  Last update: 2016-12-07 01:43    [W:2.374 / U:0.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site