]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - queue-4.19/nfit-ars-attempt-short-ars-even-in-the-no_init_ars-case.patch
Linux 4.14.108
[thirdparty/kernel/stable-queue.git] / queue-4.19 / nfit-ars-attempt-short-ars-even-in-the-no_init_ars-case.patch
1 From fa3ed4d981b1fc19acdd07fcb152a4bd3706892b Mon Sep 17 00:00:00 2001
2 From: Dan Williams <dan.j.williams@intel.com>
3 Date: Wed, 13 Feb 2019 09:01:13 -0800
4 Subject: nfit/ars: Attempt short-ARS even in the no_init_ars case
5
6 From: Dan Williams <dan.j.williams@intel.com>
7
8 commit fa3ed4d981b1fc19acdd07fcb152a4bd3706892b upstream.
9
10 The no_init_ars option is meant to prevent long-ARS, but short-ARS
11 should be allowed to grab any immediate results.
12
13 Fixes: bc6ba8085842 ("nfit, address-range-scrub: rework and simplify ARS...")
14 Cc: <stable@vger.kernel.org>
15 Reported-by: Erwin Tsaur <erwin.tsaur@oracle.com>
16 Reviewed-by: Toshi Kani <toshi.kani@hpe.com>
17 Signed-off-by: Dan Williams <dan.j.williams@intel.com>
18 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
19
20 ---
21 drivers/acpi/nfit/core.c | 5 +++--
22 1 file changed, 3 insertions(+), 2 deletions(-)
23
24 --- a/drivers/acpi/nfit/core.c
25 +++ b/drivers/acpi/nfit/core.c
26 @@ -2892,11 +2892,12 @@ static int ars_register(struct acpi_nfit
27 {
28 int rc;
29
30 - if (no_init_ars || test_bit(ARS_FAILED, &nfit_spa->ars_state))
31 + if (test_bit(ARS_FAILED, &nfit_spa->ars_state))
32 return acpi_nfit_register_region(acpi_desc, nfit_spa);
33
34 set_bit(ARS_REQ_SHORT, &nfit_spa->ars_state);
35 - set_bit(ARS_REQ_LONG, &nfit_spa->ars_state);
36 + if (!no_init_ars)
37 + set_bit(ARS_REQ_LONG, &nfit_spa->ars_state);
38
39 switch (acpi_nfit_query_poison(acpi_desc)) {
40 case 0: