Re: linux-next: manual merge of the slab tree with the rcu tree

From: Paul E. McKenney

Date: Thu Jul 30 2026 - 14:56:42 EST


On Thu, Jul 30, 2026 at 03:38:48PM +0100, Mark Brown wrote:
> Hi all,
>
> Today's linux-next merge of the slab tree got a conflict in:
>
> mm/slab_common.c
>
> between commit:
>
> 736084507faa3 ("rcu: Rename struct rcu_gp_oldstate to rcu_gp_seq")
>
> from the rcu tree and commit:
>
> bdd0cc9f0ffc3 ("mm/slab: introduce struct kvfree_rcu_head for kvfree_rcu batching")
>
> from the slab tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.

This resolution looks good to me, thank you!

Thanx, Paul

> diff --cc mm/slab_common.c
> index 657fd75776ea7,b8f21eabcccc2..0000000000000
> --- a/mm/slab_common.c
> +++ b/mm/slab_common.c
> @@@ -1363,8 -1420,8 +1420,8 @@@ struct kvfree_rcu_bulk_data
>
> struct kfree_rcu_cpu_work {
> struct rcu_work rcu_work;
> - struct rcu_head *head_free;
> + struct kvfree_rcu_head *head_free;
> - struct rcu_gp_oldstate head_free_gp_snap;
> + struct rcu_gp_seq head_free_gp_snap;
> struct list_head bulk_head_free[FREE_N_CHANNELS];
> struct kfree_rcu_cpu *krcp;
> };
> @@@ -1569,10 -1626,10 +1626,10 @@@ static void kfree_rcu_work(struct work_
> unsigned long flags;
> struct kvfree_rcu_bulk_data *bnode, *n;
> struct list_head bulk_head[FREE_N_CHANNELS];
> - struct rcu_head *head;
> + struct kvfree_rcu_head *head;
> struct kfree_rcu_cpu *krcp;
> struct kfree_rcu_cpu_work *krwp;
> - struct rcu_gp_oldstate head_gp_snap;
> + struct rcu_gp_seq head_gp_snap;
> int i;
>
> krwp = container_of(to_rcu_work(work),