linux-api.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Micay <danielmicay@gmail.com>
To: Andy Lutomirski <luto@amacapital.net>, Minchan Kim <minchan@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-mm@kvack.org" <linux-mm@kvack.org>,
	Michael Kerrisk <mtk.manpages@gmail.com>,
	Linux API <linux-api@vger.kernel.org>,
	Hugh Dickins <hughd@google.com>,
	Johannes Weiner <hannes@cmpxchg.org>,
	Rik van Riel <riel@redhat.com>, Mel Gorman <mgorman@suse.de>,
	KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>,
	Jason Evans <je@fb.com>,
	"Kirill A. Shutemov" <kirill@shutemov.name>,
	Shaohua Li <shli@kernel.org>, Michal Hocko <mhocko@suse.cz>,
	yalin wang <yalin.wang2010@gmail.com>
Subject: Re: [PATCH v3 01/17] mm: support madvise(MADV_FREE)
Date: Thu, 12 Nov 2015 00:21:30 -0500	[thread overview]
Message-ID: <564421DA.9060809@gmail.com> (raw)
In-Reply-To: <CALCETrWA6aZC_3LPM3niN+2HFjGEm_65m9hiEdpBtEZMn0JhwQ@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1413 bytes --]

> I also think that the kernel should commit to either zeroing the page
> or leaving it unchanged in response to MADV_FREE (even if the decision
> of which to do is made later on).  I think that your patch series does
> this, but only after a few of the patches are applied (the swap entry
> freeing), and I think that it should be a real guaranteed part of the
> semantics and maybe have a test case.

This would be a good thing to test because it would be required to add
MADV_FREE_UNDO down the road. It would mean the same semantics as the
MEM_RESET and MEM_RESET_UNDO features on Windows, and there's probably
value in that for the sake of migrating existing software too.

For one example, it could be dropped into Firefox:

https://dxr.mozilla.org/mozilla-central/source/memory/volatile/VolatileBufferWindows.cpp

And in Chromium:

https://code.google.com/p/chromium/codesearch#chromium/src/base/memory/discardable_shared_memory.cc

Worth noting that both also support the API for pinning/unpinning that's
used by Android's ashmem too. Linux really needs a feature like this for
caches. Firefox simply doesn't drop the memory at all on Linux right now:

https://dxr.mozilla.org/mozilla-central/source/memory/volatile/VolatileBufferFallback.cpp

(Lock == pin, Unlock == unpin)

For reference:

https://msdn.microsoft.com/en-us/library/windows/desktop/aa366887(v=vs.85).aspx


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

  reply	other threads:[~2015-11-12  5:21 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-12  4:32 [PATCH v3 00/17] MADFV_FREE support Minchan Kim
2015-11-12  4:32 ` [PATCH v3 01/17] mm: support madvise(MADV_FREE) Minchan Kim
2015-11-12  4:49   ` Andy Lutomirski
2015-11-12  5:21     ` Daniel Micay [this message]
2015-11-13  6:15       ` Minchan Kim
2015-11-13  6:16         ` Daniel Micay
     [not found]           ` <56458056.8020105-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-11-13  6:38             ` Minchan Kim
2015-11-13  6:45               ` Daniel Micay
2015-11-13  7:03                 ` Minchan Kim
2015-11-13  8:13                   ` Daniel Micay
2015-11-13 19:46                     ` Andy Lutomirski
2015-11-16  2:13                       ` Minchan Kim
2015-11-16  3:14                         ` yalin wang
     [not found]   ` <1447302793-5376-2-git-send-email-minchan-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2015-11-12 11:26     ` Kirill A. Shutemov
     [not found]       ` <20151112112620.GB22481-sVvlyX1904swdBt8bTSxpkEMvNT87kid@public.gmane.org>
2015-11-13  6:17         ` Minchan Kim
2015-11-12  4:32 ` [PATCH v3 02/17] mm: define MADV_FREE for some arches Minchan Kim
2015-11-12  4:32 ` [PATCH v3 03/17] arch: uapi: asm: mman.h: Let MADV_FREE have same value for all architectures Minchan Kim
2015-11-12 11:27   ` Kirill A. Shutemov
2015-11-13  6:18     ` Minchan Kim
     [not found]       ` <564895F3.8090300@hotmail.com>
2015-11-15 14:23         ` Chen Gang
2015-11-12  4:33 ` [PATCH v3 04/17] mm: free swp_entry in madvise_free Minchan Kim
2015-11-12  4:33 ` [PATCH v3 05/17] mm: move lazily freed pages to inactive list Minchan Kim
2015-11-12  4:33 ` [PATCH v3 06/17] mm: clear PG_dirty to mark page freeable Minchan Kim
2015-11-12  4:33 ` [PATCH v3 07/17] mm: mark stable page dirty in KSM Minchan Kim
2015-11-12  4:33 ` [PATCH v3 08/17] x86: add pmd_[dirty|mkclean] for THP Minchan Kim
2015-11-12  4:33 ` [PATCH v3 09/17] sparc: " Minchan Kim
2015-11-12  4:33 ` [PATCH v3 10/17] powerpc: " Minchan Kim
2015-11-12  4:33 ` [PATCH v3 11/17] arm: add pmd_mkclean " Minchan Kim
2015-11-12  4:33 ` [PATCH v3 12/17] arm64: " Minchan Kim
2015-11-12  4:33 ` [PATCH v3 13/17] mm: don't split THP page when syscall is called Minchan Kim
2015-11-12  4:33 ` [PATCH v3 14/17] mm: introduce wrappers to add new LRU Minchan Kim
2015-11-12  4:33 ` [PATCH v3 15/17] mm: introduce lazyfree LRU list Minchan Kim
     [not found] ` <1447302793-5376-1-git-send-email-minchan-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2015-11-12  4:33   ` [PATCH v3 16/17] mm: support MADV_FREE on swapless system Minchan Kim
2015-11-12  4:33   ` [PATCH v3 17/17] mm: add knob to tune lazyfreeing Minchan Kim
     [not found]     ` <1447302793-5376-18-git-send-email-minchan-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2015-11-12 19:44       ` Shaohua Li
     [not found]         ` <20151112194453.GA50352-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2015-11-13  6:20           ` Minchan Kim

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=564421DA.9060809@gmail.com \
    --to=danielmicay@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=hannes@cmpxchg.org \
    --cc=hughd@google.com \
    --cc=je@fb.com \
    --cc=kirill@shutemov.name \
    --cc=kosaki.motohiro@jp.fujitsu.com \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=luto@amacapital.net \
    --cc=mgorman@suse.de \
    --cc=mhocko@suse.cz \
    --cc=minchan@kernel.org \
    --cc=mtk.manpages@gmail.com \
    --cc=riel@redhat.com \
    --cc=shli@kernel.org \
    --cc=yalin.wang2010@gmail.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;
as well as URLs for NNTP newsgroup(s).