Re: [PATCH] mm/page_alloc: fix memalloc_nocma_{save/restore} APIs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jul 21, 2020 at 12:28:49PM +0900, js1304@xxxxxxxxx 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;

> @@ -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.




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux