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

"Paul E. McKenney" <[email protected]> Thu, 30 Jul 2026 10:31:53 -0700
Newsgroups org.kernel.vger.linux-next,org.kernel.vger.linux-kernel
Message-ID <cdc6cf4f-57b2-475d-b9d3-23c4693ed871@paulmck-laptop>
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),