2013/9/17 Mel Gorman <mgorman@xxxxxxx>
On Tue, Sep 17, 2013 at 10:02:22AM +0800, ?????? wrote:
> index fd724bc..5d244d0 100644
> --- a/kernel/sched/fair.c
> +++ b/kernel/sched/fair.c
> @@ -1227,6 +1227,16 @@ void task_numa_work(struct callback_head *work)
> if (!vma_migratable(vma))
> continue;
>
> + /*
> + * Shared library pages mapped by multiple processes are not
> + * migrated as it is expected they are cache replicated. Avoid
> + * hinting faults in read-only file-backed mappings or the vdso
> + * as migrating the pages will be of marginal benefit.
> + */
> + if (!vma->vm_mm ||
> + (vma->vm_file && (vma->vm_flags & (VM_READ|VM_WRITE)) == (VM_READ)))
> + continue;
> +
>
> =?? May I ask a question, we should consider some VMAs canot be scaned for BalanceNuma?
> (VM_DONTEXPAND | VM_RESERVED | VM_INSERTPAGE |
> VM_NONLINEAR | VM_MIXEDMAP | VM_SAO));
vma_migratable check covers most of the other VMAs we do not care
about. I do not see the point of checking for some of the VMA flags you
mention. Please state which of the additional flags that you think should
be checked and why.
=> we should filter out the VMAs of VM_MIXEDMAP, because of it just set pte_mknuma for normal mapping pages in change_pte_range.
Best,
Figo.zhang
--
Mel Gorman
SUSE Labs
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href="" href="mailto:dont@xxxxxxxxx">dont@xxxxxxxxx"> email@xxxxxxxxx </a>