On Thu, 19 Jun 2014 13:07:47 +0400 Vladimir Davydov <vdavydov@xxxxxxxxxxxxx> wrote: > mm->pinned_vm counts pages of mm's address space that were permanently > pinned in memory by increasing their reference counter. The counter was > introduced by commit bc3e53f682d9 ("mm: distinguish between mlocked and > pinned pages"), while before it locked_vm had been used for such pages. > > Obviously, we should reset the counter on fork if !CLONE_VM, just like > we do with locked_vm, but currently we don't. Let's fix it. > > ... > > --- a/kernel/fork.c > +++ b/kernel/fork.c > @@ -534,6 +534,7 @@ static struct mm_struct *mm_init(struct mm_struct *mm, struct task_struct *p) > atomic_long_set(&mm->nr_ptes, 0); > mm->map_count = 0; > mm->locked_vm = 0; > + mm->pinned_vm = 0; > memset(&mm->rss_stat, 0, sizeof(mm->rss_stat)); > spin_lock_init(&mm->page_table_lock); > mm_init_cpumask(mm); What are the runtime effects of this? I think it is only "/proc/pid/status:VmPin is screwed up", because we don't use vm_pinned in rlimit checks. Yes? -- 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=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>