]> git.proxmox.com Git - mirror_ubuntu-disco-kernel.git/commit
ACPI / APEI: Generalise the estatus queue's notify code
authorJames Morse <james.morse@arm.com>
Tue, 29 Jan 2019 18:48:45 +0000 (18:48 +0000)
committerSeth Forshee <seth.forshee@canonical.com>
Thu, 28 Mar 2019 20:05:20 +0000 (15:05 -0500)
commit353020c01964968194b2fc599ce1744d98a3c8f9
treed2d517fb1c187977c6cc05f7fb46f3b174c60fa7
parent230cf25ad2c209406f1ef5c504b93ce984ea58d1
ACPI / APEI: Generalise the estatus queue's notify code

BugLink: https://bugs.launchpad.net/bugs/1822005
Refactor the estatus queue's pool notification routine from
NOTIFY_NMI's handlers. This will allow another notification
method to use the estatus queue without duplicating this code.

Add rcu_read_lock()/rcu_read_unlock() around the list
list_for_each_entry_rcu() walker. These aren't strictly necessary as
the whole nmi_enter/nmi_exit() window is a spooky RCU read-side
critical section.

in_nmi_queue_one_entry() is separate from the rcu-list walker for a
later caller that doesn't need to walk a list.

Signed-off-by: James Morse <james.morse@arm.com>
Reviewed-by: Punit Agrawal <punit.agrawal@arm.com>
Tested-by: Tyler Baicar <tbaicar@codeaurora.org>
[ rjw: Drop unnecessary err variable in two places ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
(cherry picked from commit ee2eb3d4ee175c2fb5c7f67e84f5fe40a8147d92)
Signed-off-by: dann frazier <dann.frazier@canonical.com>
Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
drivers/acpi/apei/ghes.c