lkml.org 
[lkml]   [2022]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 131/545] ACPI: APEI: Fix _EINJ vs EFI_MEMORY_SP
    Date
    From: Dan Williams <dan.j.williams@intel.com>

    [ Upstream commit b13a3e5fd40b7d1b394c5ecbb5eb301a4c38e7b2 ]

    When a platform marks a memory range as "special purpose" it is not
    onlined as System RAM by default. However, it is still suitable for
    error injection. Add IORES_DESC_SOFT_RESERVED to einj_error_inject() as
    a permissible memory type in the sanity checking of the arguments to
    _EINJ.

    Fixes: 262b45ae3ab4 ("x86/efi: EFI soft reservation to E820 enumeration")
    Reviewed-by: Tony Luck <tony.luck@intel.com>
    Reported-by: Omar Avelar <omar.avelar@intel.com>
    Signed-off-by: Dan Williams <dan.j.williams@intel.com>
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/acpi/apei/einj.c | 2 ++
    1 file changed, 2 insertions(+)

    diff --git a/drivers/acpi/apei/einj.c b/drivers/acpi/apei/einj.c
    index 133156759551..c281d5b339d3 100644
    --- a/drivers/acpi/apei/einj.c
    +++ b/drivers/acpi/apei/einj.c
    @@ -544,6 +544,8 @@ static int einj_error_inject(u32 type, u32 flags, u64 param1, u64 param2,
    ((region_intersects(base_addr, size, IORESOURCE_SYSTEM_RAM, IORES_DESC_NONE)
    != REGION_INTERSECTS) &&
    (region_intersects(base_addr, size, IORESOURCE_MEM, IORES_DESC_PERSISTENT_MEMORY)
    + != REGION_INTERSECTS) &&
    + (region_intersects(base_addr, size, IORESOURCE_MEM, IORES_DESC_SOFT_RESERVED)
    != REGION_INTERSECTS)))
    return -EINVAL;

    --
    2.35.1


    \
     
     \ /
      Last update: 2022-08-19 18:01    [W:4.020 / U:0.636 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site