lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+HUmGhOEPNcUGn1-yc6Zo41wYSCO+Ch4qh6N2TDbFEfRmNvEQ@mail.gmail.com>
Date:   Tue, 26 Nov 2019 14:42:00 -0800
From:   Francesco Ruggeri <fruggeri@...sta.com>
To:     Dmitry Safonov <0x7f454c46@...il.com>
Cc:     lenb@...nel.org, "Rafael J. Wysocki" <rjw@...ysocki.net>,
        open list <linux-kernel@...r.kernel.org>,
        linux-acpi@...r.kernel.org
Subject: Re: [PATCH] ACPI: only free map once in osl.c

On Thu, Nov 21, 2019 at 2:58 PM Dmitry Safonov <0x7f454c46@...il.com> wrote:
>
> On Wed, 20 Nov 2019 at 05:50, Francesco Ruggeri <fruggeri@...sta.com> wrote:
> >
> > 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@...sta.com>
>
> Reviewed-by: Dmitry Safonov <0x7f454c46@...il.com>
>
> Thanks,
>              Dmitry

Any more comments on this?
Can this be applied or is more work needed?

Thanks,
Francesco Ruggeri

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ