Re: [patch 7/8] sched, numa: do not hint for NUMA balancing on VM_MIXEDMAP mappings

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

 



* akpm@xxxxxxxxxxxxxxxxxxxx <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:

> From: Mel Gorman <mgorman@xxxxxxx>
> Subject: sched, numa: do not hint for NUMA balancing on VM_MIXEDMAP mappings
> 
> Jovi Zhangwei reported the following problem
> 
>   Below kernel vm bug can be triggered by tcpdump which mmaped a lot of pages
>   with GFP_COMP flag.
> 
>   [Mon May 25 05:29:33 2015] page:ffffea0015414000 count:66 mapcount:1 mapping:          (null) index:0x0
>   [Mon May 25 05:29:33 2015] flags: 0x20047580004000(head)
>   [Mon May 25 05:29:33 2015] page dumped because: VM_BUG_ON_PAGE(compound_order(page) && !PageTransHuge(page))
>   [Mon May 25 05:29:33 2015] ------------[ cut here ]------------
>   [Mon May 25 05:29:33 2015] kernel BUG at mm/migrate.c:1661!
>   [Mon May 25 05:29:33 2015] invalid opcode: 0000 [#1] SMP

> --- a/kernel/sched/fair.c~sched-numa-do-not-hint-for-numa-balancing-on-vm_mixedmap-mappings
> +++ a/kernel/sched/fair.c
> @@ -2181,7 +2181,7 @@ void task_numa_work(struct callback_head
>  	}
>  	for (; vma; vma = vma->vm_next) {
>  		if (!vma_migratable(vma) || !vma_policy_mof(vma) ||
> -			is_vm_hugetlb_page(vma)) {
> +			is_vm_hugetlb_page(vma) || (vma->vm_flags & VM_MIXEDMAP)) {
>  			continue;
>  		}

the fix looks good to me, but this should really be done in a bit cleaner fashion, 
by breaking out an vma_numa_migratable() inline helper or so? Anyway:

Acked-by: Ingo Molnar <mingo@xxxxxxxxxx>

Thanks,

	Ingo
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




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