Right now Bluez always requests flushable ACL packets (but does not set a flush timeout, so effectively they are non-flushable): However it is desirable to use an ACL flush timeout on A2DP packets so that if the ACL packets block for some reason then the LM can flush them to make room for newer packets. Is it reasonable for Bluez to use the 0x00 ACL packet boundary flag by default (non-flushable packet), and let userspace request flushable packets on A2DP L2CAP sockets with the socket option L2CAP_LM_RELIABLE. Make sense? Any other suggestions? Attached is a rough (untested) patch of what I had in mind. See core spec 2.E.5.4.2 for reference. Nick
Attachment:
0001-Bluetooth-Send-non-flushable-ACL-packets-by-default.patch
Description: Binary data