Page MenuHomeFreeBSD

ng_ubt_intel: Ignore unexpected HCI events
ClosedPublic

Authored by wulf on Sep 21 2024, 1:57 PM.
Tags
None
Referenced Files
F106226674: D46736.id143568.diff
Fri, Dec 27, 12:41 PM
F106190763: D46736.diff
Thu, Dec 26, 9:36 PM
Unknown Object (File)
Sun, Dec 22, 5:08 AM
Unknown Object (File)
Nov 24 2024, 11:42 AM
Unknown Object (File)
Nov 17 2024, 1:41 AM
Unknown Object (File)
Nov 7 2024, 12:34 AM
Unknown Object (File)
Nov 7 2024, 12:34 AM
Unknown Object (File)
Oct 25 2024, 5:53 PM

Details

Summary

If Intel firmware is already in operational mode at boot that takes
place at warm boot, BT adaptor can generate extra HCI events which
interferes with firmware mode detection logic. Ignore them.

Sponsored by: Future Crew LLC
MFC after: 1 month

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 59549
Build 56436: arc lint + arc unit

Event Timeline

wulf requested review of this revision.Sep 21 2024, 1:57 PM
sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c
577

space after if; can do before commit; no need for a new revision here.

864

see comment below

873

Here and above you man do a partial usbd_copy_out but then skipping the remainder. Is that save or will that confuse some other logic in case of a failing condition + "goto"? Should you do all the conditional checks first and then do the usbd_copy_out() all together?

sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c
873

I can't do any checks before data has been copied out of DMA-ble page cache. So I prefetch header to private on-stack memory to not thrash caller-supplied buffer on negative case, than do all the checks and than copy out all data to the buffer on success.

This revision is now accepted and ready to land.Oct 28 2024, 1:55 PM
This revision was automatically updated to reflect the committed changes.