[PATCH 0/2] rcu: Transform kfree_rcu() into kvfree_rcu()

From: Kirill Tkhai
Date: Tue Feb 06 2018 - 05:19:57 EST


Recent times kvmalloc() begun widely be used in kernel.
Some of such memory allocations have to be freed after
rcu grace period, and this patchset introduces a generic
primitive for doing this.

Actually, everything is made in [1/2]. Patch [2/2] is just
added to make new kvfree_rcu() have the first user.

The patch [1/2] transforms kfree_rcu(), its sub definitions
and its sub functions into kvfree_rcu() form. The most
significant change is in __rcu_reclaim(), where kvfree()
is used instead of kfree(). Since kvfree() is able to
have a deal with memory allocated via kmalloc(), vmalloc()
and kvmalloc(); kfree_rcu() and vfree_rcu() may simply
be defined through this new kvfree_rcu().

---

Kirill Tkhai (2):
rcu: Transform kfree_rcu() into kvfree_rcu()
mm: Use kvfree_rcu() in update_memcg_params()


include/linux/rcupdate.h | 31 +++++++++++++++++--------------
include/linux/rcutiny.h | 4 ++--
include/linux/rcutree.h | 2 +-
include/trace/events/rcu.h | 12 ++++++------
kernel/rcu/rcu.h | 8 ++++----
kernel/rcu/tree.c | 14 +++++++-------
kernel/rcu/tree_plugin.h | 10 +++++-----
mm/slab_common.c | 10 +---------
8 files changed, 43 insertions(+), 48 deletions(-)

--
Signed-off-by: Kirill Tkhai <ktkhai@xxxxxxxxxxxxx>