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] [day] [month] [year] [list]
Message-ID: <e3d20e7f-d29f-132c-f81d-ac0c294de66b@suse.cz>
Date:   Fri, 26 Feb 2021 13:34:25 +0100
From:   Vlastimil Babka <vbabka@...e.cz>
To:     Rik van Riel <riel@...riel.com>, Hugh Dickins <hughd@...gle.com>
Cc:     Andrew Morton <akpm@...ux-foundation.org>, xuyu@...ux.alibaba.com,
        mgorman@...e.de, aarcange@...hat.com, willy@...radead.org,
        linux-kernel@...r.kernel.org, kernel-team@...com,
        linux-mm@...ck.org, mhocko@...e.com
Subject: Re: [PATCH 4/3] mm,shmem,thp: limit shmem THP allocations to
 requested zones

On 2/24/21 6:10 PM, Rik van Riel wrote:
> On Wed, 24 Feb 2021 08:55:40 -0800 (PST)
> Hugh Dickins <hughd@...gle.com> wrote:
>> On Wed, 24 Feb 2021, Rik van Riel wrote:
>> > On Wed, 2021-02-24 at 00:41 -0800, Hugh Dickins wrote:  
>> > > Oh, I'd forgotten all about that gma500 aspect:
>> > > well, I can send a fixup later on.  
>> > 
>> > I already have code to fix that, which somebody earlier
>> > in this discussion convinced me to throw away. Want me
>> > to send it as a patch 4/3 ?  
>> 
>> If Andrew wants it all, yes, please do add that - thanks Rik.
> 
> Trivial patch to fix the gma500 thing below:
> 
> ---8<---
> 
> mm,shmem,thp: limit shmem THP allocations to requested zones
> 
> Hugh pointed out that the gma500 driver uses shmem pages, but needs
> to limit them to the DMA32 zone. Ensure the allocations resulting from
> the gfp_mask returned by limit_gfp_mask use the zone flags that were
> originally passed to shmem_getpage_gfp.
> 
> Signed-off-by: Rik van Riel <riel@...riel.com>
> Suggested-by: Hugh Dickins <hughd@...gle.com>

Acked-by: Vlastimil Babka <vbabka@...e.cz>

> ---
>  mm/shmem.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/mm/shmem.c b/mm/shmem.c
> index ee3cea10c2a4..876fec89686f 100644
> --- a/mm/shmem.c
> +++ b/mm/shmem.c
> @@ -1539,7 +1539,11 @@ static gfp_t limit_gfp_mask(gfp_t huge_gfp, gfp_t limit_gfp)
>  {
>  	gfp_t allowflags = __GFP_IO | __GFP_FS | __GFP_RECLAIM;
>  	gfp_t denyflags = __GFP_NOWARN | __GFP_NORETRY;
> -	gfp_t result = huge_gfp & ~allowflags;
> +	gfp_t zoneflags = limit_gfp & GFP_ZONEMASK;
> +	gfp_t result = huge_gfp & ~(allowflags | GFP_ZONEMASK);
> +
> +	/* Allow allocations only from the originally specified zones. */
> +	result |= zoneflags;
>  
>  	/*
>  	 * Minimize the result gfp by taking the union with the deny flags,
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ