lkml.org 
[lkml]   [2020]   [Jun]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [RFT][PATCH 0/3] ACPI: ACPICA / OSL: Avoid unmapping ACPI memory inside of the AML interpreter
    Date
    On Wednesday, June 10, 2020 2:17:04 PM CEST Rafael J. Wysocki wrote:
    > Hi All,
    >
    > This series is to address the problem with RCU synchronization occurring,
    > possibly relatively often, inside of acpi_ex_system_memory_space_handler(),
    > when the namespace and interpreter mutexes are held.
    >
    > The basic idea is to avoid the actual unmapping of memory in
    > acpi_ex_system_memory_space_handler() by making it take the advantage of the
    > reference counting of memory mappings utilized by the OSL layer in Linux.
    >
    > The basic assumption in patch [1/3] is that if the special
    > ACPI_OS_MAP_MEMORY_FAST_PATH() macro is present, it can be used to increment
    > the reference counter of a known-existing memory mapping in the OS layer
    > which then is dropped by the subsequent acpi_os_unmap_memory() without
    > unmapping the address range at hand. That can be utilized by
    > acpi_ex_system_memory_space_handler() to prevent the reference counters of
    > all mappings used by it from dropping down to 0 (which also prevents the
    > address ranges associated with them from being unmapped) so that they can
    > be unmapped later (specifically, at the operation region deactivation time).
    >
    > Patch [2/3] defers the unmapping even further, until the namespace and
    > interpreter mutexes are released, to avoid invoking the RCU synchronization
    > under theses mutexes.
    >
    > Finally, patch [3/3] changes the OS layer in Linux to provide the
    > ACPI_OS_MAP_MEMORY_FAST_PATH() macro.
    >
    > Note that if this macro is not defined, the code works the way it used to.
    >
    > The series is available from the git branch at
    >
    > git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git \
    > acpica-osl
    >
    > for easier testing.

    Please disregard this patch series, it will be replaced by a new one which
    already is there in the acpica-osl branch above.

    Thanks!



    \
     
     \ /
      Last update: 2020-06-13 21:21    [W:4.160 / U:0.160 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site