Commit c6c5df29 authored by Dan Williams's avatar Dan Williams
Browse files

nfit/ars: Attempt a short-ARS whenever the ARS state is idle at boot



If query-ARS reports that ARS has stopped and requires continuation
attempt to retrieve short-ARS results before continuing the long
operation.

Fixes: bc6ba808 ("nfit, address-range-scrub: rework and simplify ARS...")
Cc: <stable@vger.kernel.org>
Reported-by: default avatarKrzysztof Rusocki <krzysztof.rusocki@intel.com>
Reviewed-by: default avatarToshi Kani <toshi.kani@hpe.com>
Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
parent d1393711
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -3012,6 +3012,7 @@ static int ars_register(struct acpi_nfit_desc *acpi_desc,

	switch (acpi_nfit_query_poison(acpi_desc)) {
	case 0:
	case -ENOSPC:
	case -EAGAIN:
		rc = ars_start(acpi_desc, nfit_spa, ARS_REQ_SHORT);
		/* shouldn't happen, try again later */
@@ -3036,7 +3037,6 @@ static int ars_register(struct acpi_nfit_desc *acpi_desc,
		break;
	case -EBUSY:
	case -ENOMEM:
	case -ENOSPC:
		/*
		 * BIOS was using ARS, wait for it to complete (or
		 * resources to become available) and then perform our