summaryrefslogtreecommitdiff
path: root/scripts/basic
diff options
context:
space:
mode:
authorFrancesco Ruggeri <fruggeri@arista.com>2019-11-19 21:47:27 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-12-21 10:35:27 +0100
commit6fb1c89b1e69c94fae74a5add7e9be123914545d (patch)
tree5ea3b0abcbe8544c1b1595835d2793c71a9dc389 /scripts/basic
parent9c319a2d2027dc51d4583061cb9a25682000be4a (diff)
ACPI: OSL: only free map once in osl.c
commit 833a426cc471b6088011b3d67f1dc4e147614647 upstream. acpi_os_map_cleanup checks map->refcount outside of acpi_ioremap_lock before freeing the map. This creates a race condition the can result in the map being freed more than once. A panic can be caused by running for ((i=0; i<10; i++)) do for ((j=0; j<100000; j++)) do cat /sys/firmware/acpi/tables/data/BERT >/dev/null done & done This patch makes sure that only the process that drops the reference to 0 does the freeing. Fixes: b7c1fadd6c2e ("ACPI: Do not use krefs under a mutex in osl.c") Signed-off-by: Francesco Ruggeri <fruggeri@arista.com> Reviewed-by: Dmitry Safonov <0x7f454c46@gmail.com> Cc: All applicable <stable@vger.kernel.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'scripts/basic')
0 files changed, 0 insertions, 0 deletions