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:   Tue, 21 Jul 2020 14:38:56 +0200
From:   Vlastimil Babka <vbabka@...e.cz>
To:     Matthew Wilcox <willy@...radead.org>, js1304@...il.com
Cc:     Andrew Morton <akpm@...ux-foundation.org>, linux-mm@...ck.org,
        linux-kernel@...r.kernel.org, kernel-team@....com,
        Christoph Hellwig <hch@...radead.org>,
        Roman Gushchin <guro@...com>,
        Mike Kravetz <mike.kravetz@...cle.com>,
        Naoya Horiguchi <n-horiguchi@...jp.nec.com>,
        Michal Hocko <mhocko@...e.com>,
        "Aneesh Kumar K . V" <aneesh.kumar@...ux.ibm.com>,
        Joonsoo Kim <iamjoonsoo.kim@....com>, stable@...r.kernel.org
Subject: Re: [PATCH] mm/page_alloc: fix memalloc_nocma_{save/restore} APIs

On 7/21/20 2:05 PM, Matthew Wilcox wrote:
> On Tue, Jul 21, 2020 at 12:28:49PM +0900, js1304@...il.com wrote:
>> +static inline unsigned int current_alloc_flags(gfp_t gfp_mask,
>> +					unsigned int alloc_flags)
>> +{
>> +#ifdef CONFIG_CMA
>> +	unsigned int pflags = current->flags;
>> +
>> +	if (!(pflags & PF_MEMALLOC_NOCMA) &&
>> +		gfp_migratetype(gfp_mask) == MIGRATE_MOVABLE)
>> +		alloc_flags |= ALLOC_CMA;
> 
> Please don't indent by one tab when splitting a line because it looks like
> the second line and third line are part of the same block.  Either do
> this:
> 
> 	if (!(pflags & PF_MEMALLOC_NOCMA) &&
> 	    gfp_migratetype(gfp_mask) == MIGRATE_MOVABLE)
> 		alloc_flags |= ALLOC_CMA;
> 
> or this:
> 	if (!(pflags & PF_MEMALLOC_NOCMA) &&
> 			gfp_migratetype(gfp_mask) == MIGRATE_MOVABLE)
> 		alloc_flags |= ALLOC_CMA;

Ah, good point.

>> @@ -4619,8 +4631,10 @@ __alloc_pages_slowpath(gfp_t gfp_mask, unsigned int order,
>>  		wake_all_kswapds(order, gfp_mask, ac);
>>  
>>  	reserve_flags = __gfp_pfmemalloc_flags(gfp_mask);
>> -	if (reserve_flags)
>> +	if (reserve_flags) {
>>  		alloc_flags = reserve_flags;
>> +		alloc_flags = current_alloc_flags(gfp_mask, alloc_flags);
>> +	}
> 
> Is this right?  Shouldn't you be passing reserve_flags to
> current_alloc_flags() here?  Also, there's no need to add { } here.

Note the "alloc_flags = reserve_flags;" line is not being deleted here. But if
it was, your points would be true, and yeah it would be a bit more tidy.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ