lkml.org 
[lkml]   [2017]   [Apr]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH v2] acpi: fix acpi_get_table() leak / acpi-sysfs denial of service
On Wed, Apr 26, 2017 at 3:25 PM, Rafael J. Wysocki <rafael@kernel.org> wrote:
> On Tue, Apr 25, 2017 at 9:58 PM, Dan Williams <dan.j.williams@intel.com> wrote:
>> Reading an ACPI table through the /sys/firmware/acpi/tables interface
>> more than 65,536 times leads to the following log message:
>>
>> ACPI Error: Table ffff88033595eaa8, Validation count is zero after increment
>> (20170119/tbutils-423)
>>
>> ...and the table being unavailable until the next reboot. Add the
>> missing acpi_put_table() so the table ->validation_count is decremented
>> after each read.
>>
>> Cc: <stable@vger.kernel.org>
>> Cc: Zhang Rui <rui.zhang@intel.com>
>> Cc: Rafael Wysocki <rafael.j.wysocki@intel.com>
>> Cc: Kristin Jacque <kristin.jacque@intel.com>
>> Cc: Tiffany Kasanicky <tiffany.j.kasanicky@intel.com>
>> Cc: Ryon Jensen <ryon.jensen@intel.com>
>> Reported-by: Anush Seetharaman <anush.seetharaman@intel.com>
>> Fixes: 1c8fce27e275 ("ACPI: introduce drivers/acpi/sysfs.c")
>> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
>
> I'm going to apply this, but your Fixes tag is not correct.
>
> validation_count was added to struct acpi_table_desc by commit
>
> commit 174cc7187e6f088942c8e74daa7baff7b44b33c9
> Author: Lv Zheng <lv.zheng@intel.com>
> Date: Wed Dec 14 15:04:25 2016 +0800
>
> ACPICA: Tables: Back port acpi_get_table_with_size() and
> early_acpi_os_unmap_memory()
> from Linux kernel
>
> from the 4.10 time frame, so IMO it should be
>
> Fixes: 174cc7187e6f (ACPICA: Tables: Back port
> acpi_get_table_with_size() and early_acpi_os_unmap_memory() from Linux
> kernel)
>

Ah, thanks for the catch, I missed that detail and was wrong to argue
it was a 7 year old bug. Apologies Lv!

\
 
 \ /
  Last update: 2017-04-27 00:38    [W:0.112 / U:1.924 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site