[roll] Roll fuchsia [kernel] Add writes_enabled_ to KTrace

Adds a writes_enabled_ boolean that keeps track of whether writes are
currently enabled. Also adds methods to Enable and Disable writes.

The method to DisableWrites is a bit tricky, since it performs two
separate functions:
1. It sets writes_enabled_ to false; this is pretty straightforward.
2. It disables interrupts on the current core. This prevents the
   current thread from being migrated across CPUs. We could potentially
   suffice with disabling preemption, but the mp_sync_exec target we
   use requires interrupts to be disabled.
2. It sends an IPI to every other core and waits for it to return. Since
   writes occur with interrupts disabled, a core's ability to process
   an IPI can be taken as evidence that it is not currently writing
   a trace record. Furthermore, mp_sync_exec issues a memory barrier,
   ensuring that any future attempt to write to the trace buffer
   correctly sees that writes are disabled.

Original-Bug: 404539312
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1249205
Original-Revision: d64c1571f4db525fb3bafa8b8f0ddd73220baa5d
GitOrigin-RevId: 09355b958f31ca0f0d86e82038aefccc321644a4
Change-Id: Ic92f66555918247e09636de73c7a1f9d3c5f50f6
diff --git a/stem b/stem
index fc69ebd..5ae3ad0 100644
--- a/stem
+++ b/stem
@@ -11,7 +11,7 @@
              githooks="integration/git-hooks"
              remote="https://fuchsia.googlesource.com/fuchsia"
              gerrithost="https://fuchsia-review.googlesource.com"
-             revision="eb48c10e27c6d73a084f7463fa6bcfd916305a35"
+             revision="d64c1571f4db525fb3bafa8b8f0ddd73220baa5d"
              />
   </projects>
   <hooks>