[roll] Roll fuchsia [brcmfmac] Fix dropped scan results race condition

When starting a scan we associate a sync ID with each scan, this is sent
to firmware and each scan result contains this sync ID to ensure that
the scan result belongs to the currently ongoing scan. The sync ID is
not stored until the scan has started, this means that it's vulnerable
to a race condition where if the thread that starts the scanning gets
suspended before it stores the sync ID results could arrive and they
would be matched against an incorrect sync ID. This would cause the
results to be dropped.

This fixes the issue by introducing a lock such that the whole process
of starting a scan completes before we start processing results.

Test: Manual testing able to reproduce without fix, not with fix
Original-Bug: fxbug.dev/77630
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/536032
Original-Revision: 55bcf7ce1ef84c3b267ee128566294f08325700a
GitOrigin-RevId: edc01a24e8ed6e41dc0170562a930263dbad3bb5
Change-Id: I03779fa38822994be0171f186da3c604ac4f6341
1 file changed
tree: edcd2c745fff41455be1f5561de5c33a2fee07b3
  1. garnet/
  2. infra/
  3. peridot/
  4. third_party/
  5. topaz/
  6. zircon/
  7. firmware
  8. flower
  9. jiri.lock
  10. minimal
  11. prebuilts
  12. README.md
  13. stem
  14. 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 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.