On Thu, Mar 3, 2016 at 1:21 PM, Vishal Verma <vishal.l.verma@xxxxxxxxx> wrote: > If firmware doesn't implement any of the ARS commands, take that to > mean that ARS is unsupported, and continue to initialize regions without > bad block lists. We cannot make the assumption that ARS commands will be > unconditionally supported on all NVDIMMs. > > Cc: Dan Williams <dan.j.williams@xxxxxxxxx> > Reported-by: Xiao Guangrong <guangrong.xiao@xxxxxxxxxxxxxxx> > Signed-off-by: Vishal Verma <vishal.l.verma@xxxxxxxxx> > --- > drivers/acpi/nfit.c | 15 +++++++++++---- > 1 file changed, 11 insertions(+), 4 deletions(-) > > diff --git a/drivers/acpi/nfit.c b/drivers/acpi/nfit.c > index fb53db1..df99e33 100644 > --- a/drivers/acpi/nfit.c > +++ b/drivers/acpi/nfit.c > @@ -1590,14 +1590,21 @@ static int acpi_nfit_find_poison(struct acpi_nfit_desc *acpi_desc, > start = ndr_desc->res->start; > len = ndr_desc->res->end - ndr_desc->res->start + 1; > > + /* > + * If ARS is unimplemented, unsupported, or if the 'Persistent Memory > + * Scrub' flag in extended status is not set, skip this but continue > + * initialization > + */ > rc = ars_get_cap(nd_desc, ars_cap, start, len); > + if (rc == -ENOTTY) { > + dev_warn(acpi_desc->dev, > + "ARS_CAP is not implemented, won't create an error list\n"); s/ARS_CAP/Address range scrub/ Also, let's make this dev_dbg(), since it's not a requirement that a bus provider implement scrub commands. -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html