Skip to content
Snippets Groups Projects
  1. Sep 02, 2023
    • David Duarte's avatar
      Use external/liblc3 · da9c6040
      David Duarte authored
      Bug: 296140934
      Test: mmm packages/modules/Bluetooth
      Change-Id: I75e5a99912220f76dd284b6cf3b94873bdc30b42
      da9c6040
  2. Aug 02, 2023
    • Archie Pusaka's avatar
      Floss: hcidoc: Add parts for processing profiles · ba9f3768
      Archie Pusaka authored
      We can't really process the profiles now, since a lot of them depends
      on parsing ACL packets, which we don't currently have. Therefore, this
      CL contains only parsing HFP, which can be inferred by SCO connection.
      
      Bug: 293397988
      Tag: #floss
      Test: Manual test with HFP profile
      Change-Id: I69a4b2448bd669616c0c80e8454c5a698eecb5a4
      ba9f3768
  3. Jul 28, 2023
    • JohnLai's avatar
      Floss: Implements host of floss bluetooth test server · 553d61b7
      JohnLai authored
      Implements host and security.OnPairing of floss bluetooth test server.
      
      Bug: 289480188
      Test: mma packages/modules/Bluetooth && pts-bot GAP
      Tag: #floss
      Change-Id: Iddb56f21bd9b773bfc6870b7dbf99e73a5cd4f5a
      553d61b7
  4. Jul 27, 2023
    • Archie Pusaka's avatar
      Floss: Hcidoc: Display informational conn which init'd before snoop start · f2a12ab7
      Archie Pusaka authored
      Bug: 293397988
      Test: Run hcidoc to parse feedback 91002174092.
      Change-Id: I4c678302953f08a06f899c4927ee0ac2265772c0
      f2a12ab7
    • Archie Pusaka's avatar
      Floss: Hcidoc: Attempt to identify Nocp for unknown handle · 5989f8b0
      Archie Pusaka authored
      Currently when a device is disconnected and the handle is unknown
      (happens when the connect complete event occurs before the start of
      the snoop log), we don't report the potential Nocp. However, we stored
      the ACL transaction for every handle regardless of whether its known
      or otherwise, so we have enough information to actually determine
      whether the disconnection has Nocp issue.
      
      This CL doesn't skip checking Nocp for unknown handle.
      
      Bug: 293397988
      Test: Test with report 91002174092
      Change-Id: If4b768c56faaf22845d69fe044606eb830a403ba
      5989f8b0
    • Archie Pusaka's avatar
      Floss: hcidoc: Sort the addresses in informational rule · 52d26253
      Archie Pusaka authored
      Sorted information is easier to navigate, so sort the addresses
      before printing them out.
      
      Bug: 293397988
      Test: Run hcidoc with report 91055564245
      Change-Id: I4fdc9e7dc5736fc15e699283f9d530ac7f31a8e3
      52d26253
  5. Jul 25, 2023
    • JohnLai's avatar
      Floss: Fork Floss D-Bus Clients from autotest_lib · ee9d97e9
      JohnLai authored
      Copied the following clients and utils from autotest_lib:
      * adapter_client
      * advertising_client
      * scanner_client
      * manager_client
      * floss_enums
      * observer_base
      
      Changes made afterwards:
      *Move all utils functions into one utils file.
      *Remove qa_legacy_proxy calls from adapter_client.
      *Lint the forked code as Google Python style.
      
      Bug: 289480188
      Test: mma packages/modules/Bluetooth
      Tag: #floss
      Change-Id: I3d32b3361b59255412bef9787a5258f73a6d28a9
      ee9d97e9
  6. Jul 19, 2023
  7. Jul 10, 2023
    • Archie Pusaka's avatar
      Floss: hcidoc: Consider adapter off and suspend in rulesets · 0f0d00d5
      Archie Pusaka authored
      When adapter is going off or suspending, the host will send
      disconnect request with reason Remote Device Power Off (0x15), and
      might not wait for the reply from the peer device. We should treat
      this accordingly in hcidoc to avoid wrong judgement because of
      missing disconnect events.
      
      Additionally, when controller is reset, we should also reset the
      states of the rules, otherwise we might get bogus signals which is
      based on the old state of the controller.
      
      This CL adjust the states for the Informational Rule and Connection
      Rule.
      
      Bug: 290593784
      Tag: #floss
      Test: test with feedback report 91055564245 and 91061378476
      Change-Id: Ie77389cdd301440d60912c51087994c82c59098f
      0f0d00d5
    • Archie Pusaka's avatar
      Floss: hcidoc: add ignore-unknown and signals-only parameter · 774ea19e
      Archie Pusaka authored
      Add parameters to hcidoc to avoid printing error message when
      encountering unknown opcodes, and to print only the signals,
      respectively.
      
      Bug: 276750818
      Test: verify manually
      Change-Id: I6e61533aeccfc833f9523d8ef26f7bb4a878dfc1
      774ea19e
  8. Jul 05, 2023
    • howardchung's avatar
      Floss: add controller rules to hcidoc · 88ad5898
      howardchung authored
      This creates a controller group for tracking controller related issues.
      For example, crash dump, hardware error, reset, etc. The hardware error
      signal is added in this patch as well.
      
      Tag: #Floss
      Bug: 289336326
      Test: run hcidoc locally with the btsnoop log in b/284940248
      Change-Id: Ib304360b40dd37abc1202c4b896dea095ddaf29e
      88ad5898
  9. Jun 30, 2023
    • Vovo Yang's avatar
      floss: hcidoc: Remove dependency to tokio · 29f5dd7c
      Vovo Yang authored
      hcidoc doesn't use tokio. The tokio dependency would cause tokio uprev
      issue in chromeos/src/third_party/rust_crates/.
      
      Bug: 262928525
      Tag: #floss
      Test: ./build.py --target utils
      Change-Id: I1bd99cfbe7f17006b1e1a857f3470ddbe63c6dae
      29f5dd7c
  10. Jun 26, 2023
    • Abhishek Pandit-Subedi's avatar
      floss: hcidoc: Fix changes introduced by pdlc · c5653d12
      Abhishek Pandit-Subedi authored
      Bug: 283991766
      Tag: #floss
      Test: ./build.py --target utils
      Change-Id: Ia9df95b0ff60ab34126d6412a3ffcfcff196b639
      c5653d12
    • Archie Pusaka's avatar
      Floss: Add InformationalRule to hcidoc · 193a84fe
      Archie Pusaka authored
      This prints peer device's names and also the ACL connection stats,
      e.g. time and direction.
      
      Here are some example output of this rule in action selected from
      several random snoop logs, address redacted.
      xx:xx:xx:xx:E8:D8 (BR/EDR, 企鵝love小羊), 0 connections
      xx:xx:xx:xx:7D:E8 (Dual, Chromebox for Meetings), 0 connections
      xx:xx:xx:xx:75:DB (LE, {"N00Z6", "BCM4350C0 UART 37.4 MHz"}), 0 connections
      xx:xx:xx:xx:26:8E (BR/EDR, RASPI_AUDIO), 0 connections
      xx:xx:xx:xx:C7:8A (LE, LE-Acrux), 0 connections
      xx:xx:xx:xx:29:B1 (LE, LE_WH-1000XM4), 0 connections
      xx:xx:xx:xx:CF:F1 (BR/EDR, WH-1000XM4), 1 connections
      > Handle: 256, Host initiated, 07:46:48.714164 to N/A
      xx:xx:xx:xx:05:EC (Dual, {"LE-Ketan Bose NC 700", "Ketan Bose NC 700"}), 1 connections
      > Handle: 51, Host initiated, 13:29:33.661278 to 13:34:08.093888
      xx:xx:xx:xx:B4:25 (LE, <Unknown name>), 3 connections
      > Handle: 3585, Host initiated, 15:29:21.098920 to N/A
      > Handle: 3585, Host initiated, 15:47:22.142535 to 15:47:22.275464
      > Handle: 3585, Host initiated, 15:47:22.301486 to N/A
      
      It's better if we can drill further to profile level but that needs
      some modification on packetgen for acl_packets, so let's separate
      the effort.
      
      Bug: 288211078
      Tag: #floss
      Test: Use hcidoc with random btsnoop logs from feedback reports.
      Change-Id: Ie20e1c0f22a0e24acff88cbfe70a179098965bee
      193a84fe
  11. Jun 21, 2023
    • Archie Pusaka's avatar
      Floss: Add LinkKeyMismatchRule to hcidoc · f6158325
      Archie Pusaka authored
      This rule detects auth failures that's caused by link key mismatch,
      including when the peer device forgets the connection.
      
      Additionally this CL changes the outputted addresses into
      xx:xx:xx:xx:xx:xx format.
      
      Bug: 285256429
      Tag: #floss
      Test: Run hcidoc with the feedbacks in b/284802375
      
      Change-Id: I43035751fb01a3b1b9cbab74ae6694b139c6f9b4
      f6158325
  12. Jun 06, 2023
    • Abhishek Pandit-Subedi's avatar
      floss: Add dependency on pdl-compiler · f6064259
      Abhishek Pandit-Subedi authored
      Add a dependency on pdl-compiler in preparation for using it to replace
      bluetooth_packetgen for Rust.
      
      Bug: 283991766
      Tag: #floss
      Test: Rebuild docker container
      
      Change-Id: Iba2213f9b8cde1a061c457cac0b56a6a7759067e
      f6064259
  13. May 31, 2023
    • Abhishek Pandit-Subedi's avatar
      floss: Update hcidoc to capture RnR collisions · e887851e
      Abhishek Pandit-Subedi authored
      Capture a few types of collisions from serializable commands:
      * RnR
      * Inquiry
      * Connection
      
      Only Inquiry is checked for a self-collision (haven't seen self
      collisions for RnR or Connection in real usage) but we could update to
      catch all collisions in the future.
      
      Bug: 262928525
      Tag: #floss
      Test: ./build.py --target utils and run hcidoc on test files
      Change-Id: I9cb8e16958fe114c79ff7b7cd168911fbeaf47a5
      e887851e
  14. May 26, 2023
  15. May 17, 2023
  16. May 09, 2023
  17. Mar 01, 2023
  18. Feb 22, 2023
    • Abhishek Pandit-Subedi's avatar
      floss: Add signals to hcidoc · 2d7cd7d5
      Abhishek Pandit-Subedi authored
      Feedback analyzer wants specific tags to bucket issues. To support this,
      we add the concept of signals, which contain a packet index, timestamp
      and a tag. Emit the Nocp signal as the first implementation of this.
      
      Bug: 262928525
      Tag: #floss
      Test: ./build.py --target utils (and run binary)
      Change-Id: I964919e70fc13fa1472790309a9dd4f8517cf651
      2d7cd7d5
  19. Feb 13, 2023
    • Jesse Melhuish's avatar
      Floss: Fix missing time import for build script · 9a0a6424
      Jesse Melhuish authored
      Bug: 233123814
      Tag: #floss
      Test: manual
      Change-Id: I26b061a6607e2fc5ff3eeb198bc87b05df49edc6
      9a0a6424
    • Abhishek Pandit-Subedi's avatar
      floss: Add nocp detection · 2fc0fea6
      Abhishek Pandit-Subedi authored
      We see bad behavior on some controllers where the time from an ACL
      packet being sent to when the Number of Completed packets response is
      received is very long. Usually this results in a disconnection. Update
      OddDisconnectionsRule to capture this scenario.
      
      Bug: 262928525
      Tag: #floss
      Test: ./build.py --target utils (and run binary)
      Change-Id: I24f92f4c9f2fcd66b7fc4ca1b7d5f9facd4dd9fb
      2fc0fea6
  20. Feb 11, 2023
    • Abhishek Pandit-Subedi's avatar
      floss: Add rules engine + connections rule · c18e0f7b
      Abhishek Pandit-Subedi authored
      Add a rules engine that can be run on a log file. Seed this with
      a connections rule group that monitors connections and reports
      abnormalities.
      
      Bug: 262928525
      Tag: #floss
      Test: ./build.py --target utils (and run binary)
      Change-Id: Id32ac2763ef19762a968437c4b8dfcb55ee13fdc
      c18e0f7b
    • Abhishek Pandit-Subedi's avatar
      floss: Update hcidoc to parse commands/events · 79b17b9d
      Abhishek Pandit-Subedi authored
      Convert Linux snoop packets into a common packet format that can be
      properly processed.
      
      Bug: 262928525
      Tag: #floss
      Test: ./build.py --target utils (and run binary)
      Change-Id: I544d4bfaac8aee91bfb91fe9009eedf92df1b23c
      79b17b9d
  21. Feb 10, 2023
    • Abhishek Pandit-Subedi's avatar
      floss: Add hcidoc tool to read snoop files · 2a9a9167
      Abhishek Pandit-Subedi authored
      Hcidoc will be used to analyze snoop files and snooz files to identify
      errors and other behaviors. This commit simply sets up the hcidoc crate
      and a simple snoop reader.
      
      Bug: 262928525
      Tag: #floss
      Test: ./build.py --target utils
      Change-Id: I7eeae136a35d51a01ac2ab137dbf114e07f800e9
      2a9a9167
  22. Jan 31, 2023
  23. Jan 24, 2023
  24. Dec 20, 2022
  25. Oct 12, 2022
    • Abhishek Pandit-Subedi's avatar
      floss: Update container image · f326deb7
      Abhishek Pandit-Subedi authored
      Recent changes in rust_crates requires rustc 1.60. Also pulls in llvm-14
      in the latest debian images.
      
      Bug: 253298221
      Tag: #floss
      Test: ./floss/build/build-in-podman.py --image-tag floss:latest
      Change-Id: Ia2d9a7ada99ada1a13570df00aaf131cf8e3d307
      f326deb7
  26. Mar 31, 2022
    • Abhishek Pandit-Subedi's avatar
      floss: Replace docker with podman · f05e97f5
      Abhishek Pandit-Subedi authored
      Docker requires root permissions to run and is not preferable for
      security reasons. Podman is a drop-in replacement that doesn't run as
      root.
      
      Bug: 220203992
      Tag: #floss
      Test: ./docker-build-image.py --tag floss:latest; ./build-in-docker.py
      Change-Id: I813fb63a25bf5588560090ddfb0ad290729a4ff1
      f05e97f5
  27. Mar 29, 2022
  28. Mar 08, 2022
  29. Feb 22, 2022
  30. Feb 18, 2022
    • Abhishek Pandit-Subedi's avatar
      floss: Add docker image for build · 6e1b4e8e
      Abhishek Pandit-Subedi authored
      Add instructions on how to build with docker and include the dockerfile
      used to generate the image used. Also include a python script that can
      be run to generate the docker image and build everything.
      
      * `sudo ./docker-build-image.py --tag floss:latest` will build the
        docker image from scratch
      
      * `sudo ./build-in-docker.py` will build Floss in the current
        repository.
      
      Tag: #floss
      Bug: 220203992
      Test: ./floss/build/docker-build.py and ./build.py inside container
      Change-Id: I0888a4e00de2d1f561874d6a555fc847538a131c
      6e1b4e8e
Loading