[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <59CA0847.8000508@huawei.com>
Date: Tue, 26 Sep 2017 15:56:55 +0800
From: Xishi Qiu <qiuxishi@...wei.com>
To: Michal Hocko <mhocko@...nel.org>,
Joonsoo Kim <iamjoonsoo.kim@....com>,
Vlastimil Babka <vbabka@...e.cz>,
Mel Gorman <mgorman@...hsingularity.net>
CC: Linux MM <linux-mm@...ck.org>, LKML <linux-kernel@...r.kernel.org>,
"zhong jiang" <zhongjiang@...wei.com>,
yeyunfeng <yeyunfeng@...wei.com>, <wanghaitao12@...wei.com>,
"Zhoukang (A)" <zhoukang7@...wei.com>
Subject: [RFC] a question about mlockall() and mprotect()
When we call mlockall(), we will add VM_LOCKED to the vma,
if the vma prot is ---p, then mm_populate -> get_user_pages
will not alloc memory.
I find it said "ignore errors" in mm_populate()
static inline void mm_populate(unsigned long addr, unsigned long len)
{
/* Ignore errors */
(void) __mm_populate(addr, len, 1);
}
And later we call mprotect() to change the prot, then it is
still not alloc memory for the mlocked vma.
My question is that, shall we alloc memory if the prot changed,
and who(kernel, glibc, user) should alloc the memory?
Thanks,
Xishi Qiu
Powered by blists - more mailing lists