From: Jianyu Zhan <nasa4836@gmail.com>
To: Xishi Qiu <qiuxishi@huawei.com>
Cc: Linux MM <linux-mm@kvack.org>, LKML <linux-kernel@vger.kernel.org>
Subject: Re: [RFC] mm: why we should clear page when do anonymous page fault
Date: Mon, 22 Feb 2016 11:12:06 +0800 [thread overview]
Message-ID: <CAHz2CGUDM5qHKBFjkDnEvRt1TrohuETtFzNhknxkVZEUASeVCQ@mail.gmail.com> (raw)
In-Reply-To: <56CA78F7.9010201@huawei.com>
On Mon, Feb 22, 2016 at 10:56 AM, Xishi Qiu <qiuxishi@huawei.com> wrote:
> handle_pte_fault()
> do_anonymous_page()
> alloc_zeroed_user_highpage_movable()
>
> We will alloc a zeroed page when do anonymous page fault, I don't know
> why should clear it? just for safe?
>
> If user space program do like the following, there are two memset 0, right?
> kernel alloc zeroed page, and user memset 0 it again, this will waste a
> lot of time.
>
> main()
> {
> ...
> vaddr = malloc(size)
> if (vaddr)
> memset(vaddr, 0, size);
> ...
> }
>
>
> Thanks,
> Xishi Qiu
>
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to majordomo@kvack.org. For more info on Linux MM,
> see: http://www.linux-mm.org/ .
> Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
I believe this is mainly for security reason.
To zero a highmem page, we could avoid another process peeking into the page
that is (highly likely) just released by another process, who might
well have put its confidential
data in that very page.
IIRC, Windows zeros the pages at freeing time. Linux instead does it lazily.
And for the userspace zeroing action, it is another problem - user
just wants a clean, definitive
context to act on ( and we can be sure he/she is a self-disciplined
guy who does not peek into
other's secret, but we can not assume that for all).
Thanks,
Jianyu Zhan
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
prev parent reply other threads:[~2016-02-22 3:12 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-22 2:56 Xishi Qiu
2016-02-22 3:12 ` Jianyu Zhan [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAHz2CGUDM5qHKBFjkDnEvRt1TrohuETtFzNhknxkVZEUASeVCQ@mail.gmail.com \
--to=nasa4836@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=qiuxishi@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox