[roll] Roll third_party/pigweed pw_transfer: Set RPC streams directly

Rather than passing the RPC stream to the transfer thread to be moved,
set it directly. pw_rpc call objects are synchronized by pw_rpc, so it
is safe to move them between threads.

With upcoming pw_rpc changes, a thread will wait until an RPC call's
callbacks finish before moving the call object. This could cause
deadlocks in pw_transfer if a packet arrives immediately after the
stream starts, before the transfer thread gets a chance to move the call
object to its final location. The RPC thread would wait for the next
event to be available in the callback, while the transfer thread would
wait to move the new call object out of the next event until the
callback completed, resulting in deadlock. This change avoids this
issue without needing to drop any packets.

Original-Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/126924
Original-Revision: 5b53103e1076a700be79d7ed700b51f2077ccb0d
GitOrigin-RevId: ece963fc561d0f9ab2735ae818fd2f6faf16ee41
Change-Id: I522db5d014c3bea661e43eafc335f3f7cfc88484
1 file changed
tree: 8a7c5ccff034719406b1ff696cb7f48f4ad9fdf0
  1. git-hooks/
  2. infra/
  3. third_party/
  4. cts
  5. firmware
  6. flower
  7. jiri.lock
  8. minimal
  9. prebuilts
  10. README.md
  11. stem
  12. test_durations
  13. toolchain
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 via the IRC channel #fuchsia on Freenode.

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.