From: Vlastimil Babka <vbabka@suse.cz>
To: "Uladzislau Rezki (Sony)" <urezki@gmail.com>,
linux-mm@kvack.org, Andrew Morton <akpm@linux-foundation.org>
Cc: RCU <rcu@vger.kernel.org>, LKML <linux-kernel@vger.kernel.org>,
Oleksiy Avramchenko <oleksiy.avramchenko@sony.com>
Subject: Re: [RFC v1 0/5] Move kvfree_rcu() into SLAB
Date: Thu, 12 Dec 2024 11:30:36 +0100 [thread overview]
Message-ID: <e683b73f-4bf3-47be-b08a-4fd2fe6adff5@suse.cz> (raw)
In-Reply-To: <20241210164035.3391747-1-urezki@gmail.com>
On 12/10/24 17:40, Uladzislau Rezki (Sony) wrote:
> Hello!
Hi and thanks!
> This series is based on v6.12 kernel.
Could it be rebased to v6.13-rc1, which is a basis for most -next branches?
Right now patch 5 doesn't apply on v6.13-rc1.
Please also Cc all slab maintainers/reviewers.
> It is an attempt to move the kvfree_rcu()
> into MM from the kernel/rcu/ place. I split the series into a few patches so it
> is easier to follow a migration process.
I think this is not the best approach. The individual diffs are not easy to
follow because they copy code or delete code separately, and not move it in
a single commit. I get a much better overview when I diff the whole series
against baseline, then git highlights pure moves and local changes nicely.
Having moves recorded properly would also make it possible for "git blame
-C" to show changes that were made in the old file before the move, but with
copy and deletion in separate commits it doesn't work.
(but note it seems it doesn't work so great even if I squash everything to
one patch - were the functions reodered?)
And with this approach you also need the temporary changes.
What I think could work better is to do:
- preparatory changes in the existing location
- splitting out kvfree_rcu_init() and calling separately in start_kernel()
- renaming shrinkers
- adjusting the names passed to trace_rcu_...()
- maybe even adding the CONFIG_TINY_RCU guards even if redundant
- one big move of code between files, hopefully needing no or minimal
adjustments after the preparatory steps
Makes sense?
Thanks,
Vlastimil
> As a result of this series, the main functionality is located under MM.
>
> Uladzislau Rezki (Sony) (5):
> rcu/kvfree: Temporary reclaim over call_rcu()
> mm/slab: Copy main data structures of kvfree_rcu()
> mm/slab: Copy internal functions of kvfree_rcu()
> mm/slab: Copy a function of kvfree_rcu() initialization
> mm/slab: Move kvfree_rcu() into SLAB
>
> include/linux/slab.h | 1 +
> init/main.c | 1 +
> kernel/rcu/tree.c | 866 ------------------------------------------
> mm/slab_common.c | 875 +++++++++++++++++++++++++++++++++++++++++++
> 4 files changed, 877 insertions(+), 866 deletions(-)
>
next prev parent reply other threads:[~2024-12-12 10:30 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-10 16:40 Uladzislau Rezki (Sony)
2024-12-10 16:40 ` [RFC v1 1/5] rcu/kvfree: Temporary reclaim over call_rcu() Uladzislau Rezki (Sony)
2024-12-10 16:40 ` [RFC v1 2/5] mm/slab: Copy main data structures of kvfree_rcu() Uladzislau Rezki (Sony)
2024-12-10 16:40 ` [RFC v1 3/5] mm/slab: Copy internal functions " Uladzislau Rezki (Sony)
2024-12-10 16:40 ` [RFC v1 4/5] mm/slab: Copy a function of kvfree_rcu() initialization Uladzislau Rezki (Sony)
2024-12-10 16:40 ` [RFC v1 5/5] mm/slab: Move kvfree_rcu() into SLAB Uladzislau Rezki (Sony)
2024-12-11 16:12 ` [RFC v1 0/5] " Paul E. McKenney
2024-12-12 10:30 ` Vlastimil Babka [this message]
2024-12-12 18:04 ` Uladzislau Rezki
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=e683b73f-4bf3-47be-b08a-4fd2fe6adff5@suse.cz \
--to=vbabka@suse.cz \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=oleksiy.avramchenko@sony.com \
--cc=rcu@vger.kernel.org \
--cc=urezki@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