[roll] Roll fuchsia [kernel][sched] TransitionOfflineToActive doesn't need TransitionLock

Do not obtain the TransitionLock when bringing a secondary CPU online.

The linked bug occurs in the secondary CPU onlining path, after the
scheduler is enabled for the secondary CPU, but before the idle/power
thread on that CPU is initialized. During this critical window, if the
TransitionLock is contended, the scheduler may attempt to switch to the
idle/power thread, which causes a crash.

Eliminate TransitionOfflineToActive's dependence on TransitionLock.
Weaken what TransitionLock is guarding. Add comments that clarify what
the TransitionLock is now guarding.

Test: k ut hotplug, running the fxrev.dev/1595649 repro
Original-Original-Bug: 508725577
Original-Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1630083
Original-Original-Revision: c04db597aaa8df5d44a21d3c34ac9f03eb72715a
GitOrigin-RevId: 0b72f70b459799d7ae1f04e4278eee71a3495167
Change-Id: Ib295553625078cbc2eedca1fd6f88a149dcfcb03
Reviewed-on: https://fuchsia-review.googlesource.com/c/integration/+/1634382
Cr-Commit-Position: refs/heads/main@{#193794}
1 file changed
tree: fbe08fff7a7cb25191af2aa8234377cc69042678
  1. ctf/
  2. git-hooks/
  3. infra/
  4. third_party/
  5. cobalt
  6. flower
  7. jiri.lock
  8. MILESTONE
  9. minimal
  10. prebuilts
  11. README.md
  12. stem
  13. test_durations
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance in one of the communication channels documented at get involved.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.