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]
Date:   Thu, 30 Aug 2018 14:35:37 +0000
From:   Pasha Tatashin <Pavel.Tatashin@...rosoft.com>
To:     Jiri Slaby <jslaby@...e.cz>
CC:     "mhocko@...nel.org" <mhocko@...nel.org>,
        Steven Sistare <steven.sistare@...cle.com>,
        Daniel Jordan <daniel.m.jordan@...cle.com>,
        "benh@...nel.crashing.org" <benh@...nel.crashing.org>,
        "paulus@...ba.org" <paulus@...ba.org>,
        Andrew Morton <akpm@...ux-foundation.org>,
        "kirill.shutemov@...ux.intel.com" <kirill.shutemov@...ux.intel.com>,
        Reza Arbab <arbab@...ux.vnet.ibm.com>,
        "schwidefsky@...ibm.com" <schwidefsky@...ibm.com>,
        Heiko Carstens <heiko.carstens@...ibm.com>,
        "x86@...nel.org" <x86@...nel.org>,
        LKML <linux-kernel@...r.kernel.org>,
        "tglx@...utronix.de" <tglx@...utronix.de>,
        "linuxppc-dev@...ts.ozlabs.org" <linuxppc-dev@...ts.ozlabs.org>,
        Linux Memory Management List <linux-mm@...ck.org>,
        "linux-s390@...r.kernel.org" <linux-s390@...r.kernel.org>,
        "mgorman@...hsingularity.net" <mgorman@...hsingularity.net>
Subject: Re: [PATCH v1] mm: relax deferred struct page requirements

Thank you Jiri, I am studying it.

Pavel

On 8/24/18 3:44 AM, Jiri Slaby wrote:
> pasha.tatashin@...cle.com -> pavel.tatashin@...rosoft.com
> 
> due to
>  550 5.1.1 Unknown recipient address.
> 
> 
> On 08/24/2018, 09:32 AM, Jiri Slaby wrote:
>> On 06/19/2018, 09:56 PM, Pavel Tatashin wrote:
>>> On Tue, Jun 19, 2018 at 9:50 AM Pavel Tatashin
>>> <pasha.tatashin@...cle.com> wrote:
>>>>
>>>> On Sat, Jun 16, 2018 at 4:04 AM Jiri Slaby <jslaby@...e.cz> wrote:
>>>>>
>>>>> On 11/21/2017, 08:24 AM, Michal Hocko wrote:
>>>>>> On Thu 16-11-17 20:46:01, Pavel Tatashin wrote:
>>>>>>> There is no need to have ARCH_SUPPORTS_DEFERRED_STRUCT_PAGE_INIT,
>>>>>>> as all the page initialization code is in common code.
>>>>>>>
>>>>>>> Also, there is no need to depend on MEMORY_HOTPLUG, as initialization code
>>>>>>> does not really use hotplug memory functionality. So, we can remove this
>>>>>>> requirement as well.
>>>>>>>
>>>>>>> This patch allows to use deferred struct page initialization on all
>>>>>>> platforms with memblock allocator.
>>>>>>>
>>>>>>> Tested on x86, arm64, and sparc. Also, verified that code compiles on
>>>>>>> PPC with CONFIG_MEMORY_HOTPLUG disabled.
>>>>>>
>>>>>> There is slight risk that we will encounter corner cases on some
>>>>>> architectures with weird memory layout/topology
>>>>>
>>>>> Which x86_32-pae seems to be. Many bad page state errors are emitted
>>>>> during boot when this patch is applied:
>>>>
>>>> Hi Jiri,
>>>>
>>>> Thank you for reporting this bug.
>>>>
>>>> Because 32-bit systems are limited in the maximum amount of physical
>>>> memory, they don't need deferred struct pages. So, we can add depends
>>>> on 64BIT to DEFERRED_STRUCT_PAGE_INIT in mm/Kconfig.
>>>>
>>>> However, before we do this, I want to try reproducing this problem and
>>>> root cause it, as it might expose a general problem that is not 32-bit
>>>> specific.
>>>
>>> Hi Jiri,
>>>
>>> Could you please attach your config and full qemu arguments that you
>>> used to reproduce this bug.
>>
>> Hi,
>>
>> I seem I never replied. Attaching .config and the qemu cmdline:
>> $ qemu-kvm -m 2000 -hda /dev/null -kernel bzImage
>>
>> "-m 2000" is important to reproduce.
>>
>> If I disable CONFIG_DEFERRED_STRUCT_PAGE_INIT (which the patch allowed
>> to enable), the error goes away, of course.
>>
>> thanks,
>>
> 
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ