Commit aba9da0905f1 for kernel

commit aba9da0905f14106b368e0abf75220e744d27626
Merge: d2a43e7f89da a6fc88b22bc8
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Mar 25 18:14:19 2026 -0700

    Merge tag 'rcu-fixes.v7.0-20260325a' of git://git.kernel.org/pub/scm/linux/kernel/git/rcu/linux

    Pull RCU fixes from Boqun Feng:
     "Fix a regression introduced by commit c27cea4416a3 ("rcu: Re-implement
      RCU Tasks Trace in terms of SRCU-fast"): BPF contexts can run with
      preemption disabled or scheduler locks held, so call_srcu() must work
      in all such contexts.

      Fix this by converting SRCU's spinlocks to raw spinlocks and avoiding
      scheduler lock acquisition in call_srcu() by deferring to an irq_work
      (similar to call_rcu_tasks_generic()), for both tree SRCU and tiny
      SRCU.

      Also fix a follow-on lockdep splat caused by srcu_node allocation
      under the newly introduced raw spinlock by deferring the allocation to
      grace-period worker context"

    * tag 'rcu-fixes.v7.0-20260325a' of git://git.kernel.org/pub/scm/linux/kernel/git/rcu/linux:
      srcu: Use irq_work to start GP in tiny SRCU
      rcu: Use an intermediate irq_work to start process_srcu()
      srcu: Push srcu_node allocation to GP when non-preemptible
      srcu: Use raw spinlocks so call_srcu() can be used under preempt_disable()