• Rafael J. Wysocki's avatar
    ACPI / memhotplug: Bind removable memory blocks to ACPI device nodes · e2ff3940
    Rafael J. Wysocki authored
    During ACPI memory hotplug configuration bind memory blocks residing
    in modules removable through the standard ACPI mechanism to struct
    acpi_device objects associated with ACPI namespace objects
    representing those modules.  Accordingly, unbind those memory blocks
    from the struct acpi_device objects when the memory modules in
    question are being removed.
    
    When "offline" operation for devices representing memory blocks is
    introduced, this will allow the ACPI core's device hot-remove code to
    use it to carry out remove_memory() for those memory blocks and check
    the results of that before it actually removes the modules holding
    them from the system.
    
    Since walk_memory_range() is used for accessing all memory blocks
    corresponding to a given ACPI namespace object, it is exported from
    memory_hotplug.c so that the code in acpi_memhotplug.c can use it.
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    Tested-by: default avatarVasilis Liaskovitis <vasilis.liaskovitis@profitbricks.com>
    Reviewed-by: default avatarToshi Kani <toshi.kani@hp.com>
    e2ff3940
memory_hotplug.c 47.1 KB