The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* linux-next: manual merge of the slab tree with the rcu tree
@ 2026-07-30 14:38 Mark Brown
  2026-07-30 17:31 ` Paul E. McKenney
  2026-07-31  7:56 ` Miguel Ojeda
  0 siblings, 2 replies; 8+ messages in thread
From: Mark Brown @ 2026-07-30 14:38 UTC (permalink / raw)
  To: Vlastimil Babka
  Cc: Harry Yoo, Linux Kernel Mailing List, Linux Next Mailing List,
	Paul E. McKenney, Puranjay Mohan, Vlastimil Babka

[-- Attachment #1: Type: text/plain, Size: 1672 bytes --]

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.

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),

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread
* linux-next: manual merge of the slab tree with the rcu tree
@ 2025-02-12  4:09 Stephen Rothwell
  2025-02-12  5:34 ` Boqun Feng
  0 siblings, 1 reply; 8+ messages in thread
From: Stephen Rothwell @ 2025-02-12  4:09 UTC (permalink / raw)
  To: Vlastimil Babka, Paul E. McKenney, Frederic Weisbecker,
	Neeraj Upadhyay, Boqun Feng, Uladzislau Rezki
  Cc: Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 1920 bytes --]

Hi all,

Today's linux-next merge of the slab tree got a conflict in:

  kernel/rcu/tiny.c

between commits:

  84ae91018af5 ("rcutorture: Include grace-period sequence numbers in failure/close-call")
  2db7ab8c1086 ("rcutorture: Expand failure/close-call grace-period output")
  7acc2d90151f ("rcutorture: Make cur_ops->format_gp_seqs take buffer length")

from the rcu tree and commit:

  b14ff274e8aa ("slab, rcu: move TINY_RCU variant of kvfree_rcu() to SLAB")

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.

-- 
Cheers,
Stephen Rothwell

diff --cc kernel/rcu/tiny.c
index 8a52aca686a5,7a34a99d4664..000000000000
--- a/kernel/rcu/tiny.c
+++ b/kernel/rcu/tiny.c
@@@ -246,31 -232,6 +232,20 @@@ bool poll_state_synchronize_rcu(unsigne
  }
  EXPORT_SYMBOL_GPL(poll_state_synchronize_rcu);
  
- #ifdef CONFIG_KASAN_GENERIC
- void kvfree_call_rcu(struct rcu_head *head, void *ptr)
- {
- 	if (head)
- 		kasan_record_aux_stack(ptr);
- 
- 	__kvfree_call_rcu(head, ptr);
- }
- EXPORT_SYMBOL_GPL(kvfree_call_rcu);
- #endif
- 
 +#if IS_ENABLED(CONFIG_RCU_TORTURE_TEST)
 +unsigned long long rcutorture_gather_gp_seqs(void)
 +{
 +	return READ_ONCE(rcu_ctrlblk.gp_seq) & 0xffffULL;
 +}
 +EXPORT_SYMBOL_GPL(rcutorture_gather_gp_seqs);
 +
 +void rcutorture_format_gp_seqs(unsigned long long seqs, char *cp, size_t len)
 +{
 +	snprintf(cp, len, "g%04llx", seqs & 0xffffULL);
 +}
 +EXPORT_SYMBOL_GPL(rcutorture_format_gp_seqs);
 +#endif
 +
  void __init rcu_init(void)
  {
  	open_softirq(RCU_SOFTIRQ, rcu_process_callbacks);

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread
* linux-next: manual merge of the slab tree with the rcu tree
@ 2024-08-12  2:47 Stephen Rothwell
  0 siblings, 0 replies; 8+ messages in thread
From: Stephen Rothwell @ 2024-08-12  2:47 UTC (permalink / raw)
  To: Vlastimil Babka, Paul E. McKenney, Frederic Weisbecker,
	Neeraj Upadhyay, Boqun Feng, Uladzislau Rezki
  Cc: Linux Kernel Mailing List, Linux Next Mailing List, Waiman Long

[-- Attachment #1: Type: text/plain, Size: 1256 bytes --]

Hi all,

Today's linux-next merge of the slab tree got a conflict in:

  kernel/rcu/tree.c

between commit:

  8c5f6f00c015 ("rcu: Use system_unbound_wq to avoid disturbing isolated CPUs")

from the rcu tree and commit:

  bf0d8d2996ff ("rcu/kvfree: Add kvfree_rcu_barrier() API")

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.

-- 
Cheers,
Stephen Rothwell

diff --cc kernel/rcu/tree.c
index 0c8b56c4ee88,ebcfed9b570e..000000000000
--- a/kernel/rcu/tree.c
+++ b/kernel/rcu/tree.c
@@@ -3614,7 -3631,7 +3611,7 @@@ kvfree_rcu_queue_batch(struct kfree_rcu
  			// be that the work is in the pending state when
  			// channels have been detached following by each
  			// other.
- 			queue_rcu_work(system_unbound_wq, &krwp->rcu_work);
 -			queued = queue_rcu_work(system_wq, &krwp->rcu_work);
++			queued = queue_rcu_work(system_unbound_wq, &krwp->rcu_work);
  		}
  	}
  

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2026-07-31 12:54 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-30 14:38 linux-next: manual merge of the slab tree with the rcu tree Mark Brown
2026-07-30 17:31 ` Paul E. McKenney
2026-07-31  7:56 ` Miguel Ojeda
2026-07-31  9:59   ` Vlastimil Babka (SUSE)
2026-07-31 12:54     ` Vlastimil Babka (SUSE)
  -- strict thread matches above, loose matches on Subject: below --
2025-02-12  4:09 Stephen Rothwell
2025-02-12  5:34 ` Boqun Feng
2024-08-12  2:47 Stephen Rothwell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox