From: "Jason A. Donenfeld" <Jason@zx2c4.com>
To: David Hildenbrand <david@redhat.com>
Cc: linux-kernel@vger.kernel.org, patches@lists.linux.dev,
tglx@linutronix.de, linux-crypto@vger.kernel.org,
linux-api@vger.kernel.org, x86@kernel.org,
Linus Torvalds <torvalds@linux-foundation.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Adhemerval Zanella Netto <adhemerval.zanella@linaro.org>,
Carlos O'Donell <carlos@redhat.com>,
Florian Weimer <fweimer@redhat.com>,
Arnd Bergmann <arnd@arndb.de>, Jann Horn <jannh@google.com>,
Christian Brauner <brauner@kernel.org>,
David Hildenbrand <dhildenb@redhat.com>,
linux-mm@kvack.org
Subject: Re: [PATCH v22 1/4] mm: add MAP_DROPPABLE for designating always lazily freeable mappings
Date: Thu, 11 Jul 2024 06:32:28 +0200 [thread overview]
Message-ID: <Zo9gXAlF-82_EYX1@zx2c4.com> (raw)
In-Reply-To: <Zo8q7ePlOearG481@zx2c4.com>
On Thu, Jul 11, 2024 at 02:44:29AM +0200, Jason A. Donenfeld wrote:
> Hi David,
>
> On Wed, Jul 10, 2024 at 06:05:34AM +0200, David Hildenbrand wrote:
> > BTW, do we have to handle the folio_set_swapbacked() in sort_folio() as well?
> >
> >
> > /* dirty lazyfree */
> > if (type == LRU_GEN_FILE && folio_test_anon(folio) && folio_test_dirty(folio)) {
> > success = lru_gen_del_folio(lruvec, folio, true);
> > VM_WARN_ON_ONCE_FOLIO(!success, folio);
> > folio_set_swapbacked(folio);
> > lruvec_add_folio_tail(lruvec, folio);
> > return true;
> > }
> >
> > Maybe more difficult because we don't have a VMA here ... hmm
> >
> > IIUC, we have to make sure that no folio_set_swapbacked() would ever get
> > performed on these folios, correct?
>
> Hmmm, I'm trying to figure out what to do here, and if we have to do
> something. All three conditions in that if statement will be true for a
> folio in a droppable mapping. That's supposed to match MADV_FREE
> mappings.
>
> What is the context of this, though? It's scanning pages for good ones
> to evict into swap, right? So if it encounters one that's an MADV_FREE
> page, it actually just wants to delete it, rather than sending it to
> swap. So it looks like it does just that, and then sets the swapbacked
> bit back to true, in case the folio is used for something differnet
> later?
>
> If that's correct, then I don't think we need to do anything for this
> one.
>
> If that's not correct, then we'll need to propagate the droppableness
> to the folio level. But hopefully we don't need to do that.
Looks like that's not correct. This is for pages that have been dirtied
since calling MADV_FREE. So, hm.
next prev parent reply other threads:[~2024-07-11 4:32 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-09 13:05 [PATCH v22 0/4] implement getrandom() in vDSO Jason A. Donenfeld
2024-07-09 13:05 ` [PATCH v22 1/4] mm: add MAP_DROPPABLE for designating always lazily freeable mappings Jason A. Donenfeld
2024-07-10 3:27 ` David Hildenbrand
2024-07-10 4:05 ` David Hildenbrand
2024-07-11 0:44 ` Jason A. Donenfeld
2024-07-11 4:32 ` Jason A. Donenfeld [this message]
2024-07-11 4:46 ` David Hildenbrand
2024-07-11 5:07 ` Linus Torvalds
2024-07-11 17:09 ` Jason A. Donenfeld
2024-07-11 17:17 ` Jason A. Donenfeld
2024-07-11 17:24 ` David Hildenbrand
2024-07-11 17:27 ` David Hildenbrand
2024-07-11 17:54 ` Jason A. Donenfeld
2024-07-11 17:56 ` Jason A. Donenfeld
2024-07-11 18:08 ` Jason A. Donenfeld
2024-07-11 18:24 ` David Hildenbrand
2024-07-11 18:54 ` Jason A. Donenfeld
2024-07-11 18:56 ` David Hildenbrand
2024-07-11 19:18 ` David Hildenbrand
2024-07-11 19:20 ` David Hildenbrand
2024-07-11 19:49 ` Yu Zhao
2024-07-11 19:52 ` Yu Zhao
2024-07-11 19:53 ` David Hildenbrand
2024-07-11 19:58 ` Yu Zhao
2024-07-11 20:59 ` David Hildenbrand
2024-07-11 20:20 ` Jason A. Donenfeld
2024-07-11 20:59 ` David Hildenbrand
2024-07-11 17:49 ` Jason A. Donenfeld
2024-07-11 17:57 ` Linus Torvalds
2024-07-11 19:07 ` David Hildenbrand
2024-07-11 19:17 ` Linus Torvalds
2024-07-11 19:22 ` David Hildenbrand
2024-07-11 20:07 ` Jason A. Donenfeld
2024-07-11 20:17 ` Jason A. Donenfeld
2024-07-11 22:29 ` David Hildenbrand
2024-07-12 1:21 ` Jason A. Donenfeld
2024-07-09 13:05 ` [PATCH v22 2/4] random: introduce generic vDSO getrandom() implementation Jason A. Donenfeld
2024-07-09 13:05 ` [PATCH v22 3/4] x86: vdso: Wire up getrandom() vDSO implementation Jason A. Donenfeld
2024-07-09 13:05 ` [PATCH v22 4/4] selftests/vDSO: add tests for vgetrandom Jason A. Donenfeld
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=Zo9gXAlF-82_EYX1@zx2c4.com \
--to=jason@zx2c4.com \
--cc=adhemerval.zanella@linaro.org \
--cc=arnd@arndb.de \
--cc=brauner@kernel.org \
--cc=carlos@redhat.com \
--cc=david@redhat.com \
--cc=dhildenb@redhat.com \
--cc=fweimer@redhat.com \
--cc=gregkh@linuxfoundation.org \
--cc=jannh@google.com \
--cc=linux-api@vger.kernel.org \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=patches@lists.linux.dev \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
--cc=x86@kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.