OSDN Git Service
TreeHugger Robot [Thu, 12 May 2016 23:30:32 +0000 (23:30 +0000)]
Merge "Restart failed system calls interrupted with errno of EINTR" into nyc-dev
Pavlin Radoslavov [Thu, 12 May 2016 18:36:44 +0000 (11:36 -0700)]
Restart failed system calls interrupted with errno of EINTR
In number of places we don't handle properly system calls failures
when the errno is EINTR (i.e., the system call was interrupted
by a signal). In all our use cases, the system calls should be
restarted. The handling of the following system calls (as used in the code)
has been updated/fixed:
poll, send, recv, sendmsg, nanosleep, epoll_wait
read - mostly (e.g., socket-like fds)
write - mostly (e.g., socket-like fds)
select, accept, connect
Bug:
28471477
Bug:
28658141
Change-Id: I03e6f0f67e33876780fb6d02c33eb84547ba8f95
Marie Janssen [Wed, 11 May 2016 21:58:48 +0000 (14:58 -0700)]
btif: only save config when bonded devices change
Bug:
27354612
Change-Id: I15f816c85d3ab1991abf076f7c1ae2914d773d54
Jacky Cheung [Thu, 12 May 2016 18:40:44 +0000 (18:40 +0000)]
DO NOT MERGE ANYWHERE SMP: Delay authorization complete. am:
8c519caec3 -s ours
am:
731684b29a -s ours
* commit '
731684b29a6603e3c6b22e80229d49f46c44a56c':
DO NOT MERGE ANYWHERE SMP: Delay authorization complete.
Change-Id: I01ba378fc44a2e273ef2cd53787ddc6504de38b8
Jacky Cheung [Thu, 12 May 2016 18:38:06 +0000 (18:38 +0000)]
DO NOT MERGE ANYWHERE SMP: Delay authorization complete.
am:
8c519caec3 -s ours
* commit '
8c519caec3908ce20832ce4c756f2514158da132':
DO NOT MERGE ANYWHERE SMP: Delay authorization complete.
Change-Id: I1dbfbc0b3f5cddecd18f604f5d4d0271777ce02a
Jacky Cheung [Wed, 11 May 2016 19:17:31 +0000 (12:17 -0700)]
DO NOT MERGE ANYWHERE SMP: Delay authorization complete.
Delay authorization complete during Bond Pending state in SMP.
Instead of automatically advancing the Bond Pending state, create
a 500ms window to allow the slave to stop pairing by sending over
the Pairing Failed command during the Bond Pending state.
BUG:
28475887
Change-Id: I164e8312fdf9170d0f36caf404fc42e293ed5d79
TreeHugger Robot [Wed, 11 May 2016 20:29:53 +0000 (20:29 +0000)]
Merge "Add additional VW car kits to absolute volume blacklist" into nyc-dev
Andre Eisenbach [Wed, 11 May 2016 19:21:41 +0000 (12:21 -0700)]
Add additional VW car kits to absolute volume blacklist
Change-Id: I8b0b73595e9183b9c1540b06e9e0378312c6a63d
Fixes:
25613423
Andre Eisenbach [Wed, 11 May 2016 19:06:17 +0000 (19:06 +0000)]
DO NOT MERGE ANYWHERE Fix double mutex unlock and if() condition am:
d7ec6c9c59 -s ours
am:
2e2ef67bcf -s ours
* commit '
2e2ef67bcfe9eff2e24bd336a589c17392ec9ba6':
DO NOT MERGE ANYWHERE Fix double mutex unlock and if() condition
Change-Id: Ife87fe9a7bb266daddf4407d1ec5adaf4eba3e22
Andre Eisenbach [Wed, 11 May 2016 19:01:31 +0000 (19:01 +0000)]
DO NOT MERGE ANYWHERE Fix double mutex unlock and if() condition
am:
d7ec6c9c59 -s ours
* commit '
d7ec6c9c59aab205a1e90fd1db3f98431e983dfd':
DO NOT MERGE ANYWHERE Fix double mutex unlock and if() condition
Change-Id: Ida3953705286386634d27d00ceef540090ecc533
Andre Eisenbach [Wed, 11 May 2016 03:27:20 +0000 (20:27 -0700)]
DO NOT MERGE ANYWHERE Fix double mutex unlock and if() condition
Commit "L2CAP and SDP Search API for BT profiles (2/2)" introduced two
separate issues in btsock_rfc_signaled():
1. The "slot_lock" potentially gets unlocked twice, causing
undefined behaviour.
2. The call to BTA_JvRfcommWrite() was incorrectly taken outside
of the conditional if() block that only executes the code if
data is available.
This patch reverts the relevant locking change and fixes the if()
condition.
Bug:
27204458
Change-Id: I63b1257d21ca7bdd248858ec67e28f64e37a7895
(cherry picked from commit
2d7ddd09c163c84eacddd101cf08fd8021a35370)
Andre Eisenbach [Wed, 11 May 2016 18:20:26 +0000 (18:20 +0000)]
Merge changes I693b0596,Ib5a05c47,I1da213fd,I32cd6412,If62f334d, ... into nyc-dev
* changes:
PTS: Read SMP pairing options from bt_stack.conf
PTS: Avoid BR SDP after LE pairing
PTS: Allow disabling connection updates
PTS: Add a Secure Only mode.
Changes to allow LE key upgrade
Allow C++ code to check bt_stack_config options
Sharvil Nanavati [Wed, 11 May 2016 17:23:52 +0000 (17:23 +0000)]
Merge "Fix double mutex unlock and if() condition" into nyc-dev
Jakub Pawlowski [Wed, 11 May 2016 16:08:02 +0000 (16:08 +0000)]
Merge "Change initial order of commands after establishing an LE connection" into nyc-dev
Nitin Arora [Sat, 12 Mar 2016 00:37:51 +0000 (16:37 -0800)]
PTS: Read SMP pairing options from bt_stack.conf
Use Case:
A number of cenrtification test cases require the host
to change the pairing options including auth request,
I/O capabilities, key distribution mask, key length
and Out of band capability.
Test Case: TP/PKE/BV-02-C
Failure:
Host currently only supports fixed SMP options and only
a few test cases involving pairing, are executed due
to that limitation.
Fix:
Added changes to read the SMP options from the bt_stack.conf
file at run time.
The pairing options are entered as a comma separated list eg:
SMPOptions=0xD,0x4,0xf,0xf,0x10
where the included hex values are in the following order:
\#auth, io, ikey, rkey, ksize
If all 5 options are not present, the host falls back to the
default values
Bug:
27852645
Change-Id: I693b05966695cf4660c5da10249c5f7c0663e53a
Nitin Arora [Fri, 11 Mar 2016 02:27:24 +0000 (18:27 -0800)]
PTS: Avoid BR SDP after LE pairing
Use Case: Certification test case requiring LE secure pairing
with PTS.
Test Case: TP/SCJW/BV-01-C
Failure:
While pairing with PTS for certification test cases, LE secure
pairing followed by BR/EDR cross key derivation results in the
host initiating the SDP to gather the remote BR/EDR services.
PTS considers it as a test failure.
Fix: Added run time flag in bt_stack.conf file
"PTS_DisableSDPOnLEPair" to disable the SDP immidiately after
LE pairing followed by cross key derivation.
Bug:
27852645
Change-Id: Ib5a05c47b99c2ef8256967a608ae9ebbdfba60ee
Nitin Arora [Thu, 11 Jun 2015 00:10:57 +0000 (17:10 -0700)]
PTS: Allow disabling connection updates
Use Case: Certification test case requiring LE secure pairing
with PTS.
Failure:
LE pairing test cases follow the host behavior where
connection parameters are switched to fast parameters
for SMP and service discovery and switched back to the
default values after SMP/LE discovery is complete.
PTS disconnects to these series of connection updates.
Fix:
This change disables connection updates based on run time
flag "PTS_DisableConnUpdates" fetched from bt_stack.conf
Bug:
27852645
Change-Id: I1da213fd143ccfcb0ac82c7049a94094d2716ff1
Nitin Arora [Fri, 11 Mar 2016 20:26:51 +0000 (12:26 -0800)]
PTS: Add a Secure Only mode.
Use Case:
Certification test cases require BLE to be in secure only
mode and reject legacy pairing requests.
Test Case: TP/SEC/SEM/BV-28-C
Failure:
Currently the host doesn't have a method of putting host into
a mode where it can only perform secure pairing.
This prevents execution of certification test cases
requiring Secure Only mode.
Fix:
Made changes to read the value of a tag "PTS_SecurePairOnly"
at runtime from the file "bt_stack.conf".
Bug:
27852645
Change-Id: I32cd6412621efeed2cb31c760a031762d9f369f9
Nitin Arora [Tue, 30 Jun 2015 22:04:23 +0000 (15:04 -0700)]
Changes to allow LE key upgrade
Use Case: Certifiation test cases require the LE key upgrade
to happen when the current MITM level of the device has
been upgraded. In that case, a repairing is performed,
leading to more authenticated LTK.
Test Case: TP/SEC/AUT/BV-17-C
Steps:
1. Perform LE pairing between two devices using no MITM.
2. Change the IO capability of the devices, so that a
repair would involve authentication.
3. Reconnect the devices and expect key upgrade.
Failure:
No key upgrade is seen at reconnection and the devices
continue to use the old key.
Fix:
Added changes to re-calulate the requirement of key
upgrade when the LE channel is already encrypted.
Bug:
27852645
Change-Id: If62f334dcf298b2ce9840e95035b4398cb951c84
Myles Watson [Thu, 5 May 2016 18:57:54 +0000 (11:57 -0700)]
Allow C++ code to check bt_stack_config options
Stack configuration options are parsed in C.
Bug:
28485365
Change-Id: I046ef5c676256a8da23bf8c0a7d1eeb1e9603c05
Marie Janssen [Wed, 11 May 2016 03:56:04 +0000 (03:56 +0000)]
resolve merge conflicts of
d266361 to mnc-dr1.5-dev
am:
922654c09e -s ours
* commit '
922654c09e4c114e74090e481a4777a2c393731d':
btif: Don't persist remote devices to the config
Change-Id: Id2e7cc528b34841b092d298a0d13d3bd4f3358cc
Andre Eisenbach [Wed, 11 May 2016 03:27:20 +0000 (20:27 -0700)]
Fix double mutex unlock and if() condition
Commit "L2CAP and SDP Search API for BT profiles (2/2)" introduced two
separate issues in btsock_rfc_signaled():
1. The "slot_lock" potentially gets unlocked twice, causing
undefined behaviour.
2. The call to BTA_JvRfcommWrite() was incorrectly taken outside
of the conditional if() block that only executes the code if
data is available.
This patch reverts the relevant locking change and fixes the if()
condition.
Bug:
27204458
Change-Id: I63b1257d21ca7bdd248858ec67e28f64e37a7895
Jakub Pawlowski [Tue, 10 May 2016 23:43:41 +0000 (16:43 -0700)]
Change initial order of commands after establishing an LE connection
This patch changes order of commands send to LE device after connecting.
This will cause update connection parameters to be send after read
remote version. Having it other way around cause some problems with
broadcom chips, even though it should work both ways.
Bug:
28435172
Change-Id: I8ecf76217b036842e1d9ec7df714da94a99df7d5
Jakub Pawlowski [Tue, 10 May 2016 20:44:49 +0000 (20:44 +0000)]
Merge "Change initial order of commands after establishing an LE connection" into nyc-dev
Jakub Pawlowski [Tue, 10 May 2016 20:29:59 +0000 (13:29 -0700)]
Change initial order of commands after establishing an LE connection
This patch changes order of commands send to LE device after connecting.
This will cause update connection parameters to be send after read
remote features. Having it other way around cause some problems with
broadcom chips, even though it should work both ways.
Bug:
28435172
Change-Id: I280993d40b63d41729f5a8ccf246809c3abf617d
Lianchao Song [Tue, 10 May 2016 15:38:56 +0000 (15:38 +0000)]
DO NOT MERGE ANYWHERE Do not update sco_state when no matching peer_addr is found am:
5130f53 -s ours
am:
6ded1cbed4 -s ours
* commit '
6ded1cbed4df0d4552103b1df190651dea55d7c8':
DO NOT MERGE ANYWHERE Do not update sco_state when no matching peer_addr is found
Change-Id: I6bcc41f6a5e8470f8ff514350d4043b3e4a08620
Alain Vongsouvanh [Tue, 10 May 2016 15:38:55 +0000 (15:38 +0000)]
Merge "DO NOT MERGE ANYWHERE Bring back support for legacy bt_config.xml" into cw-e-dev am:
debb9bf -s ours
am:
8fd9b7f82e -s ours
* commit '
8fd9b7f82e5907d0e5d491a0191c88ebd49cba9d':
DO NOT MERGE ANYWHERE Bring back support for legacy bt_config.xml
Change-Id: I21ffcd61c64c4e7d915b9aff721477dec85e9ebe
Zhao Xuewen [Tue, 10 May 2016 15:38:54 +0000 (15:38 +0000)]
DO NOT MERGE ANYWHERE Bluetooth: Fix the issue that peer A2DP SNK device can not auto-reconnect. am:
7cd14dc -s ours
am:
78d9f31d73 -s ours
* commit '
78d9f31d73caeeab3b1cc7645082d9ca9a8eff53':
DO NOT MERGE ANYWHERE Bluetooth: Fix the issue that peer A2DP SNK device can not auto-reconnect.
Change-Id: Ie91872eb8022f827230e7c39a75f497f4ba758c1
Marie Janssen [Tue, 10 May 2016 15:38:54 +0000 (15:38 +0000)]
DO NOT MERGE Check size of pin before replying am:
f0a69c3 am:
d016a5e am:
0c841c8
am:
9d8e2f6a49 -s ours
* commit '
9d8e2f6a498b966db73f45c5098e8dd13133d0d6':
DO NOT MERGE Check size of pin before replying
Change-Id: I87d3d4a73e309a0e4989c2cf53e9f78c54b0e6e6
Sharvil Nanavati [Tue, 10 May 2016 15:38:53 +0000 (15:38 +0000)]
Merge "DO NOT MERGE ANYWHERE Don\'t clear the btsnoop log ringbuffer on compress." into cw-e-dev am:
32e0b11 -s ours
am:
9a9a088761 -s ours
* commit '
9a9a08876151ca871ea15f2bde1f3d6d688e67f5':
DO NOT MERGE ANYWHERE Don't clear the btsnoop log ringbuffer on compress.
Change-Id: I4e11dc5ea337ac178a494d565512ebdcc9691caf
Sharvil Nanavati [Tue, 10 May 2016 15:37:39 +0000 (15:37 +0000)]
DO NOT MERGE ANYWHERE Don\'t send BT+BCC if local device doesn\'t support codec negotiation. am:
ef192019f8 -s ours
am:
4498648ede -s ours
* commit '
4498648ede31cea4858322620587c8da7ea0d1ac':
DO NOT MERGE ANYWHERE Don't send BT+BCC if local device doesn't support codec negotiation.
Change-Id: I78985b37be61d5fe21179021e3372534290ae6b9
Jacky Cheung [Tue, 10 May 2016 15:37:39 +0000 (15:37 +0000)]
Merge "DO NOT MERGE ANYWHERE Default missing DevType and DevClass in NVRAM." into cw-e-dev am:
ce1b1a6ac4 -s ours
am:
c28ef1474c -s ours
* commit '
c28ef1474c240fb38aa1ec177d3ad174b33f2828':
DO NOT MERGE ANYWHERE Default missing DevType and DevClass in NVRAM.
Change-Id: I03070dbd437422fdb788cba1e09e0fd417259210
Andre Eisenbach [Tue, 10 May 2016 15:37:38 +0000 (15:37 +0000)]
DO NOT MERGE Blacklist devices for absolute volume control am:
8fe9b6c9f7 am:
ef43e49660 -s ours
am:
95a2c10363 -s ours
* commit '
95a2c10363cb93d1572cfb32df990f2fcf2163d6':
DO NOT MERGE Blacklist devices for absolute volume control
Change-Id: Ifa7be865da2a007843520781fea59d43a0bc77d7
Sharvil Nanavati [Tue, 10 May 2016 15:37:38 +0000 (15:37 +0000)]
DO NOT MERGE ANYWHERE Sync filesystem after saving a backup of the config file. am:
b51ad9de6a -s ours
am:
fbe8c67b7d -s ours
* commit '
fbe8c67b7d576433edfdc73422b2360281dd49e8':
DO NOT MERGE ANYWHERE Sync filesystem after saving a backup of the config file.
Change-Id: Iaa96e0146923ebd79b2a00854e33467c4d857657
Ajay Panicker [Tue, 10 May 2016 15:37:37 +0000 (15:37 +0000)]
DO NOT MERGE ANYWHERE Create backup for bt_config.conf am:
4d5f21452e -s ours
am:
033c59192c -s ours
* commit '
033c59192c6ab35daacb0da35819ffeb92f30ae9':
DO NOT MERGE ANYWHERE Create backup for bt_config.conf
Change-Id: I48a7bdbc3808eb8edfbba66662606820bb1d8e7c
Andre Eisenbach [Tue, 10 May 2016 15:37:36 +0000 (15:37 +0000)]
Merge "DO NOT MERGE Add ability to add interop entries dynamically (2/2)" into mnc-dr-dev am:
bd48fd98ad am:
9c32e564df
am:
1c3f2f19e6 -s ours
* commit '
1c3f2f19e616ea34978521d5eafaf1f387b2acef':
DO NOT MERGE Add ability to add interop entries dynamically (2/2)
Change-Id: Ie85400020a1c270f9629363a437a264730a27a84
Andre Eisenbach [Tue, 10 May 2016 15:37:36 +0000 (15:37 +0000)]
DO NOT MERGE Remove Porsche car-kit pairing workaround am:
ed01581886 am:
0befe2bd60 am:
f87612c768
am:
67cbb3f146 -s ours
* commit '
67cbb3f1468aa29ba1a605cf8540a8ed2f0ede8b':
DO NOT MERGE Remove Porsche car-kit pairing workaround
Change-Id: If6ad12cadb4a4869b439fb2fcb5e88df32d00111
Jacky Cheung [Tue, 10 May 2016 15:37:35 +0000 (15:37 +0000)]
DO NOT MERGE ANYWHERE Update to use the new log tag for HCI timeout. am:
3bdb1d48d0 -s ours
am:
9784748d28 -s ours
* commit '
9784748d287e66e8442d642794d2a181ba79031d':
DO NOT MERGE ANYWHERE Update to use the new log tag for HCI timeout.
Change-Id: I86410cc4cd914ba8620d29af063b90545d89a88b
Sharvil Nanavati [Tue, 10 May 2016 15:37:34 +0000 (15:37 +0000)]
DO NOT MERGE ANYWHERE Fix build break caused by duplicate log tag. am:
8dc3dfc2e7 -s ours
am:
1e93a64272 -s ours
* commit '
1e93a642725a5411af0bc0bbf95b6712ef05fbed':
DO NOT MERGE ANYWHERE Fix build break caused by duplicate log tag.
Change-Id: I4ac25f2d4014d8e14aa5a2872add31f075d2cdde
Jacky Cheung [Tue, 10 May 2016 15:37:33 +0000 (15:37 +0000)]
DO NOT MERGE ANYWHERE Add BT_HCI_TIMEOUT log event to track HCI timeouts. am:
5a362a2f14 -s ours
am:
3ecd1121d1 -s ours
* commit '
3ecd1121d131141070b7395bb849af29d01c18db':
DO NOT MERGE ANYWHERE Add BT_HCI_TIMEOUT log event to track HCI timeouts.
Change-Id: I9f6f5c11dc0cb14b383c644bf56db63e8b2877b6
Sharvil Nanavati [Tue, 10 May 2016 15:37:32 +0000 (15:37 +0000)]
Merge "Assume input from /dev/stdin if no argument provided to btsnooz.py." into cw-e-dev am:
853ca86427 -s ours
am:
a3ed438701
* commit '
a3ed4387016bb116659bba081fc1636b8c732e7b':
Assume input from /dev/stdin if no argument provided to btsnooz.py.
Change-Id: Ic33b785f042a9d3176f6d5a2873245372f651996
Victor Tasayco Loarte [Tue, 10 May 2016 15:37:31 +0000 (15:37 +0000)]
DO NOT MERGE ANYWHERE implement wakelocks on bt adapter init am:
ef1f356866 -s ours
am:
86ccba4678 -s ours
* commit '
86ccba46786e7caa5a20fbc926f0328d4019e7a2':
DO NOT MERGE ANYWHERE implement wakelocks on bt adapter init
Change-Id: Ie45199e22bec6920bcd012f9d07c6d5d43a25197
Sharvil Nanavati [Tue, 10 May 2016 15:37:30 +0000 (15:37 +0000)]
DO NOT MERGE ANYWHERE Spoof response to AT+CNUM if we don\'t get a reply from the audio gateway. am:
529a69c8e8 -s ours
am:
9073d039b1 -s ours
* commit '
9073d039b1ac633231e0ab8a2c707bfc5beb3c6c':
DO NOT MERGE ANYWHERE Spoof response to AT+CNUM if we don't get a reply from the audio gateway.
Change-Id: Id80d31bce15408cd7e5d7ec85973e260ce4da4aa
Sharvil Nanavati [Tue, 10 May 2016 15:37:30 +0000 (15:37 +0000)]
Merge "DO NOT MERGE ANYWHERE Fix return value for HAL function config_clear." into cw-e-dev am:
f1f9523db0 -s ours
am:
87912b8170 -s ours
* commit '
87912b817087d085f5f449b86f8657a06d0ded05':
DO NOT MERGE ANYWHERE Fix return value for HAL function config_clear.
Change-Id: I562fb07e9505f682936c57e879bbd3c823a144bc
Sharvil Nanavati [Tue, 10 May 2016 15:37:28 +0000 (15:37 +0000)]
Merge "DO NOT MERGE ANYWHERE Update GKI_freebuf to gracefully handle NULL." into cw-e-dev am:
e3aabcbbf5 -s ours
am:
9844f6c5dd -s ours
* commit '
9844f6c5dd8f29ad927e30506a0ff3f18623c210':
DO NOT MERGE ANYWHERE Update GKI_freebuf to gracefully handle NULL.
Change-Id: I1897d810347ea6899678ded06262344d403334b9
tturney [Tue, 10 May 2016 15:37:17 +0000 (15:37 +0000)]
Merge "Additional headsets blacklisted for absolute volume" into mnc-dr1.5-dev
am:
8c0745ad21 -s ours
* commit '
8c0745ad219588a5c4322cde8e0c1f99eda7959e':
Additional headsets blacklisted for absolute volume
Change-Id: I4ac0d3b86274d617eff2ff1eaa09ccde3b63cb2f
Sharvil Nanavati [Tue, 10 May 2016 15:10:02 +0000 (15:10 +0000)]
Remove unused definition BOARD_HAVE_BLUETOOTH_BCM. am:
ad46ee235f
am:
cdecc6b300 -s ours
* commit '
cdecc6b300c5498fd90938e5b74271ae8e1e7b63':
Remove unused definition BOARD_HAVE_BLUETOOTH_BCM.
Change-Id: I8f5d835553c27bd04bb0eebae78e193b8c4bcacb
Ajay Panicker [Thu, 5 May 2016 21:51:34 +0000 (14:51 -0700)]
Fix undefined usage of snprintf
Using a buffer as both the format and output for snprintf could
cause undefinied behaviour on certain platforms. Instead just
use a temporary variable.
Bug:
27882028
Change-Id: If9f96fba4b3447b3248917ab9fb994bd80cbca0f
Pavlin Radoslavov [Mon, 9 May 2016 02:12:53 +0000 (19:12 -0700)]
Update l2c_fcr_clone_buf() to allocate large enough buffer
Apparently, in some parts of the code we assumed the original
buffer size is large enough and we can extend it and write
few more octets at the end.
Bug:
28351270
Change-Id: Idc53d8f68e55808c9f6bf7f18568288304a9bfb9
TreeHugger Robot [Fri, 6 May 2016 04:38:53 +0000 (04:38 +0000)]
Merge "Call BTA_VendorCleanup() during actual cleanup of the stack" into nyc-dev
Ajay Panicker [Thu, 5 May 2016 19:51:49 +0000 (12:51 -0700)]
Fix size of SDP black list array
Bug:
28617843
Change-Id: Iff5690e3aae42d9907ed9351f1059461985c8a20
Pavlin Radoslavov [Thu, 5 May 2016 23:20:15 +0000 (16:20 -0700)]
Call BTA_VendorCleanup() during actual cleanup of the stack
Previously, BTA_VendorCleanup() was called during the shutdown
process, and this created race condition crashing the stack.
Bug:
28450506
Change-Id: Ibee90d406036862b95d18e2ef00b08b820c70f68
Andy Hung [Wed, 4 May 2016 22:47:05 +0000 (15:47 -0700)]
Match socket buffer sizes between audio HAL and BT server
Adjust our mixer buffer size to be one quarter that of
the socket buffer size for quadruple buffering.
Increase socket buffer size from 20*512 to 28*512 to
smooth out variability in data draw from AudioFlinger.
Bug:
28286313
Change-Id: I8a9ca9e1f4639a0724cfe126acc670c2058cb0fb
Andre Eisenbach [Thu, 5 May 2016 17:57:44 +0000 (10:57 -0700)]
Return handle if an RFCOMM port is already open
By returning the handle, the upper layer (BTA) will attempt to
disconnect on failure to connect. Thus the attempt to open the port will
still fail, but any subsequent attempts will be able to recover.
Bug:
27204458
Change-Id: I0f8489b98adeb7f5e217201ffbbb35132a66f210
TreeHugger Robot [Thu, 5 May 2016 02:09:02 +0000 (02:09 +0000)]
Merge "Avoid NULL pointer usage of startup_future in case of HCI startup timeout" into nyc-dev
Pavlin Radoslavov [Wed, 4 May 2016 06:00:15 +0000 (23:00 -0700)]
Fixed test_periodic_unregister_processing_queue unit test
Removed a copy-and-paste check in the
test_periodic_unregister_processing_queue unit test.
The removed check adds little value - it has time-dependency,
and is not robust.
Bug:
26982349
Change-Id: I4adb948713b9946b5eb821d6fe52b7ada1400182
Pavlin Radoslavov [Wed, 4 May 2016 03:20:06 +0000 (20:20 -0700)]
Avoid NULL pointer usage of startup_future in case of HCI startup timeout
Previously, the startup_timer was created within the HCI layer start_up()
function, and after several vendor calls, we created the startup_future
that is used elsewhere. However, if any of the vendor calls blocks for
very long time, the startup_timer will timeout.
The startup_timer_expired() callback will try to use startup_future
that is still NULL, and that will trigger an assert.
The issue is avoided by creating the startup_future right before
the startup_timer is scheduled.
Bug:
28528815
Change-Id: Ib9f2c6581a86d3df0fd4d02d0b4c290663b5cfa1
Pavlin Radoslavov [Mon, 2 May 2016 17:52:07 +0000 (10:52 -0700)]
Update alarm_unregister_processing_queue() to cancel scheduled alarms
Update the alarm_unregister_processing_queue() implementation
so it cancels all alarms that are scheduled on the corresponding
queue.
This fixes a race condition during Bluetooth shutdown: if an alarm
expires right after an alarm processing queue is invalidated,
the alarm processing would try to use the invalidated queue.
Added the corresponding unit tests.
Also, added a missing call to alarm_unregister_processing_queue().
Bug:
26982349
Change-Id: I09a111e8080b6dbc354dffa03a487f7a8c578ce6
TreeHugger Robot [Tue, 3 May 2016 00:44:56 +0000 (00:44 +0000)]
Merge "Add read/write timeout to the audio sockets" into nyc-dev
Pavlin Radoslavov [Mon, 2 May 2016 22:53:22 +0000 (15:53 -0700)]
Fix test_set_zero_periodic unit test failure
Removed an "EXPECT_EQ(cb_counter, 0)" statement
right after a timer of value 0 is scheduled.
The EXPECT_EQ statement shouldn't be there,
because by the time it is reached, the callback might
have been called already.
Change-Id: I61fbec96c436787321c6b36006a2bc1c0e627667
Pavlin Radoslavov [Mon, 2 May 2016 20:40:26 +0000 (13:40 -0700)]
Add read/write timeout to the audio sockets
Add read/write timeout of 2 seconds when reading/writing
from/to the audio-related control and data sockets.
Also, removed unnecessary poll(POLLOUT), because it is not needed anymore.
Bug:
27996931
Change-Id: Ib214a85f4837760b17cded155464957f56806bd3
Sharvil Nanavati [Sat, 30 Apr 2016 04:15:29 +0000 (04:15 +0000)]
Merge "DO NOT MERGE ANYWHERE" into cw-e-dev am:
560033035b -s ours
am:
9c68fd9a4d -s ours
* commit '
9c68fd9a4d4e832664aeb91380bc5d1c444b4a2b':
DO NOT MERGE ANYWHERE
Change-Id: Idee1fabfffc5a3cc04e8aaf7d586bbd4c41e9e3a
Chenjie Luo [Sat, 30 Apr 2016 04:15:27 +0000 (04:15 +0000)]
Merge "DO NOT MERGE ANYWHERE Disconnect the AVDT connection for A2DP SRC device." into cw-e-dev am:
5084f0166e -s ours
am:
2c8ae3d115 -s ours
* commit '
2c8ae3d1153e1a69383171a8c5be50a894952132':
DO NOT MERGE ANYWHERE Disconnect the AVDT connection for A2DP SRC device.
Change-Id: I5efb950b73e2f30966013ccebc6366c9d3c2a10a
Sharvil Nanavati [Sat, 30 Apr 2016 04:15:25 +0000 (04:15 +0000)]
DO NOT MERGE ANYWHERE am:
95f816945a -s ours
am:
0e2a631634 -s ours
* commit '
0e2a631634ff759cba204b027284fa2ba3a07ba6':
DO NOT MERGE ANYWHERE
Change-Id: I90953865e007542f493d6da6c47599e71467b664
Devin Kim [Sat, 30 Apr 2016 04:15:24 +0000 (04:15 +0000)]
Do not send AT+CHLD=? if the 3-way call feature is not supported am:
79dc36d01a
am:
b616d01f01
* commit '
b616d01f01b8ebaa30629916556a86b423be758f':
Do not send AT+CHLD=? if the 3-way call feature is not supported
Change-Id: I478b834744c25f03d1202b1834279adb2c29d22a
Sathya Kumar [Sat, 30 Apr 2016 04:15:22 +0000 (04:15 +0000)]
DO NOT MERGE ANYWHERE Disable 3Mbps packets for AVDT ACL links am:
a8bb3ae08b -s ours
am:
66f79db6e6 -s ours
* commit '
66f79db6e607e3c51656a5532618b94c847118de':
DO NOT MERGE ANYWHERE Disable 3Mbps packets for AVDT ACL links
Change-Id: I1f3de149a2fc44b8ad6cc39341cd69349eeb3c82
Sharvil Nanavati [Sat, 30 Apr 2016 00:06:08 +0000 (17:06 -0700)]
resolve merge conflicts of
00a44d2 to nyc-dev
Change-Id: I64ef6cb1eb5996674e9919d13fadd43ede1d4b8c
Pavlin Radoslavov [Fri, 29 Apr 2016 22:12:33 +0000 (15:12 -0700)]
resolve merge conflicts of
f7388e6 to nyc-dev
Change-Id: I149778411a50fc5881b84cec01a2a4b43cbd2b5c
Sharvil Nanavati [Fri, 29 Apr 2016 19:35:45 +0000 (12:35 -0700)]
Fix build break caused by missing braces around struct initializer.
Change-Id: Iba376e9e4fdcfc032bdd2d20a6de7ba18c8de98c
Andre Eisenbach [Fri, 29 Apr 2016 18:34:14 +0000 (18:34 +0000)]
Merge "Additional headsets blacklisted for absolute volume" into mnc-dr1.5-dev
am:
006ede7ac2
* commit '
006ede7ac2c509ca6cba4d34b3f048bb3b6f429f':
Additional headsets blacklisted for absolute volume
Change-Id: I268c859ba121f524147ba0a7878f1705d47b8976
Marie Janssen [Fri, 29 Apr 2016 18:34:12 +0000 (18:34 +0000)]
Fix crashes with lots of discovered LE devices am:
05419c8b96 am:
7a5fa57019 am:
0ff343e006
am:
6b0e6b5779
* commit '
6b0e6b57797bdf4af5656438404c91f7fe4f6ef1':
Fix crashes with lots of discovered LE devices
Change-Id: I4d45aa391459c932396c8f7bb06f24079da8f48c
Sharvil Nanavati [Thu, 28 Apr 2016 21:54:35 +0000 (14:54 -0700)]
resolve merge conflicts of
405ec18 to nyc-dev
Change-Id: I94b431287ae831d64dc734f8cd3f071e49a9d6eb
Pavlin Radoslavov [Tue, 26 Apr 2016 19:18:36 +0000 (12:18 -0700)]
Fix issues during cleanup stage of the Bluetooth stack
* Moved free-ing of bta_av_cb timers from the init function
to the cleanup stage.
* Changed the usage of btif_jni_disassociate() so it is called
synchronously. Its previous usage was complicated -
the function was called asynchronously on a different thread,
and we had to wait on a future for its completion.
* Renamed function btif_shutdown_bluetooth() to
btif_cleanup_bluetooth() to represent better its purpose.
Similarly, bte_main_shutdown() is renamed to bte_main_cleanup()
Also:
* Removed function btif_init_fail(), because it is not used.
* Updated an error log message inside function
btif_in_execute_service_request() so the log information
is accurate and more useful.
* Updated the log messages related to the lifecycle of a module
in btcore/src/module.c
Bug:
26982349
Change-Id: Icd6f159d993bdb9c8ef09bfb5b1386b3d6ea4ff2
Andre Eisenbach [Tue, 26 Apr 2016 16:51:06 +0000 (09:51 -0700)]
Do not log unsolicited NOOP command complete events
Bug:
27744135
Change-Id: I683e3a9f0a116f83763ebcf4d0583ea1c89ef5b2
Andre Eisenbach [Wed, 30 Mar 2016 03:26:13 +0000 (03:26 +0000)]
Revert "Turn down excess logging in bt hci"
This log message is likely very necessary and if you see this excessively, we will want to know about it...
This reverts commit
11cfdf303c420d14e6cf3e4d2ca856b827ba44cf.
Change-Id: Iefd46b7aab3373a1547d83c05166fa21034c51a0
Pavlin Radoslavov [Mon, 25 Apr 2016 19:29:29 +0000 (12:29 -0700)]
Fix a race condition during alarm_cleanup()
Fix a race condition inside function alarm_cleanup() that
could be triggered during shutdown.
Also, fix few other issues:
* Add missing "timer_delete(akeup_timer)" statement inside
alarm_cleanup()
* Fix the argument when calling "timer_delete(timer)"
* Call "semaphore_free(alarm_expired)" inside alarm_cleanup()
after the corresponding "timer" and "wakeup_timer" have
been deleted.
* Fix the argument type when calling eventfd_read() inside
semaphore_wait()
Bug:
26982349
Change-Id: I2b00cd7ee7f56f755775f8e7b370006e31c6eb08
Bluetooth Build Test [Wed, 13 Apr 2016 14:39:53 +0000 (16:39 +0200)]
Fix sluggish HID devices
Right now, when connecting to HID devices, preferred connection
parameters are not being used. This is because of bug in GAP profile.
This make all HID devices use default connection parameters, which
mean that they behave sluggish. This patch fixes that by forcing
HID devices to re-read connection parameters on each reconnection.
This is a temporary workaround until GAP is rewritten.
Bug:
28378306
Change-Id: I74b70ad8e96c29517cace808632fe4d8e0251994
Manu Viswanadhan [Tue, 19 Apr 2016 09:28:40 +0000 (14:58 +0530)]
Fix FD leak caused by module wrapper thread
Use Case: Repeated BT ON/OFF
Failure: FD leak is observed with ON/OFF stress test
which eventually leads to crash due to unavailability
of FDs.
Steps:
BT ON/OFF.
Root Cause: During cleanup the module wrapper thread is
stopped but the resources are not freed, leading to FD leak.
Fix: Cleanup the module wrapper thread properly so that there
are no resource leaks.
Bug:
28312228
Change-Id: I4de2fba9c98a0e4ae73315759ec6bc8bf273948e
TreeHugger Robot [Sat, 23 Apr 2016 00:33:11 +0000 (00:33 +0000)]
Merge "Fix a Floating point exception for periodic timers" into nyc-dev
TreeHugger Robot [Sat, 23 Apr 2016 00:25:47 +0000 (00:25 +0000)]
Merge "Improve debug-ability of the stack manager" into nyc-dev
Pavlin Radoslavov [Wed, 20 Apr 2016 00:30:19 +0000 (17:30 -0700)]
Fix a Floating point exception for periodic timers
Fix a Floating point exception for periodic timers that are
scheduled with interval of 0ms, and add a corresponding unit test.
Also, fix a typo when printing "Action counts" statistics.
Bug:
28278593
Change-Id: Ic381efc573ed9954c36980c26a89318d2de40b29
Pavlin Radoslavov [Wed, 20 Apr 2016 02:20:01 +0000 (19:20 -0700)]
Improve debug-ability of the stack manager
Add or update existing log messages in the stack manager,
so it is clear when each of the init/startup/shutdown/cleanup
steps is executed and completed.
The added/updated log messages are at INFO level.
Bug:
26982349
Change-Id: Ie84aa8e96133999eb76c5b351ddd4fea56404ef0
Pavlin Radoslavov [Wed, 20 Apr 2016 02:16:26 +0000 (19:16 -0700)]
Add missing mutex lock/unlock inside alarm_cleanup()
Bug:
26982349
Change-Id: I32f4e6450491adcc1e12e71fb8bb582d6397a91a
Dan Albert [Fri, 22 Apr 2016 18:24:14 +0000 (11:24 -0700)]
Fix 64-bit build break.
Master (aosp and internal) has been broken for nearly two days now.
Was broken by https://android-review.googlesource.com/#/c/212244/
because no one checked 64-bit before merging.
No one noticed post-submit because the build servers aren't
checkbuilding any 64-bit targets (aside from mips64, which is broken
for other reasons).
I've uploaded a build change to get treehugger building a 64-bit
target (http://cr/
120564724), and also to make all the targets
checkbuilds again (http://cr/
120568746).
Change-Id: I195000284de5b52a539a47ad8b308990e72eea96
Ajay Panicker [Mon, 18 Apr 2016 18:31:48 +0000 (11:31 -0700)]
Protect config module init and add date to config file
Bug:
27354612
Change-Id: Ie956faddaa69101211e554722d682c18ed00a20a
Ajay Panicker [Fri, 22 Apr 2016 01:04:41 +0000 (01:04 +0000)]
A2DP task media alarm non-null protection
am:
420dfac186 -s ours
* commit '
420dfac186a8510d970b076a2f067f32a4118a5e':
A2DP task media alarm non-null protection
Change-Id: I77ca8ccd909c397b0662724f30e478526b32cfb4
Sharvil Nanavati [Fri, 22 Apr 2016 00:57:41 +0000 (00:57 +0000)]
Fix bug where a bonded device could enter BONDING and BONDED states again. am:
b32b3d7c1b
am:
75144cbf50 -s ours
* commit '
75144cbf50803fabeabc2f6d61700e7df69e7059':
Fix bug where a bonded device could enter BONDING and BONDED states again.
Change-Id: Ifb35e23636d7350ef6bbffb8758b2e5f0839b750
Sharvil Nanavati [Fri, 22 Apr 2016 00:37:31 +0000 (00:37 +0000)]
Merge "Fix crash in HFP client\'s +COPS parsing code." into cw-e-dev am:
bf8d17ddbb
am:
878da372c6
* commit '
878da372c65941f6d8dd5eac0317a14f9728e7fd':
Fix crash in HFP client's +COPS parsing code.
Change-Id: I989ea8f8c0ff85d415bbf8b542d42fb39bbb7879
Sharvil Nanavati [Fri, 22 Apr 2016 00:37:30 +0000 (00:37 +0000)]
Only send first 16 characters of operator name in +COPS. am:
61b8ebf698
am:
9837f7e339
* commit '
9837f7e339e6e80aaf234b80b8ff07cf09faddc0':
Only send first 16 characters of operator name in +COPS.
Change-Id: I976b7618610287db0ce2c337a2fde44f3b5d31a9
Marie Janssen [Fri, 22 Apr 2016 00:37:19 +0000 (00:37 +0000)]
Fix crashes with lots of discovered LE devices
am:
a8ace3826b -s ours
* commit '
a8ace3826b05d1ade5beb5ef2ba4dfd8d9cf98b6':
Fix crashes with lots of discovered LE devices
Change-Id: Ie1c67a4f78c3039b58702d7a80a5ad33ff3870ff
Andre Eisenbach [Fri, 22 Apr 2016 00:23:43 +0000 (00:23 +0000)]
DO NOT MERGE Blacklist devices for absolute volume control
am:
bef34921ee -s ours
* commit '
bef34921ee313f8378059d3205ebb485498b3404':
DO NOT MERGE Blacklist devices for absolute volume control
Change-Id: Id0ecff030d77833525fbecfea6c8fc9d029579ef
Ian Pedowitz [Fri, 22 Apr 2016 00:23:31 +0000 (00:23 +0000)]
Revert "Blacklist devices for absolute volume control"
am:
22c5f47b7f -s ours
* commit '
22c5f47b7f7bc4739fb1ddf85eb81d8b20f7b222':
Revert "Blacklist devices for absolute volume control"
Change-Id: Iab1a73d729f578e5e82688fb4c3e5aa1455db729
Andre Eisenbach [Thu, 21 Apr 2016 23:42:20 +0000 (23:42 +0000)]
Blacklist devices for absolute volume control
am:
2c8897ca35 -s ours
* commit '
2c8897ca35a93148619d662df03bd9da1b73679a':
Blacklist devices for absolute volume control
Change-Id: I5f0cbd1030b0e039ffcc04ae7a109f127a6acefa
Sharvil Nanavati [Thu, 21 Apr 2016 22:35:58 +0000 (22:35 +0000)]
Merge "Fix absolute volume reporting if AVRC_ADV_CTRL_INCLUDED is false" into cw-e-dev am:
3c8de06896
am:
b35d5c358e
* commit '
b35d5c358e546657bfa2195a260a9ef4301318bc':
Fix absolute volume reporting if AVRC_ADV_CTRL_INCLUDED is false
Change-Id: Ic4827eab53322da5cc88affe2c5d9014ac6b2e56
Scott James Remnant [Thu, 21 Apr 2016 22:35:56 +0000 (22:35 +0000)]
DO NOT MERGE ANYWHERE net_test_bluetooth: replace with gtest variant am:
786a7e5941 -s ours
am:
919642a4cd -s ours
* commit '
919642a4cdcc2d6a112a5a6dfebc6f8e60f706ed':
DO NOT MERGE ANYWHERE net_test_bluetooth: replace with gtest variant
Change-Id: I3ae03e08d4d15670e0f6c4e622c0a105da932868
Joshua Schwarz [Thu, 21 Apr 2016 22:35:55 +0000 (22:35 +0000)]
Merge "DO NOT MERGE ANYWHERE Rename gtest_net_test_bluedroid to gtest_net_test_bluetooth." into cw-e-dev am:
78ec0dc441 -s ours
am:
c20ef5387b -s ours
* commit '
c20ef5387b82642a5e3320083dc0a76efe5fbfb7':
DO NOT MERGE ANYWHERE Rename gtest_net_test_bluedroid to gtest_net_test_bluetooth.
Change-Id: Ib426458adec10205067a94a85cab2d3d7f67bbdb
Devin Kim [Thu, 21 Apr 2016 22:35:53 +0000 (22:35 +0000)]
Fix BT connection failures am:
198abcd704
am:
e6fdbaf8a7
* commit '
e6fdbaf8a74e95c54b1333ed631061ce5a68d22f':
Fix BT connection failures
Change-Id: I1f663b6dcde84e9517e9fc226598e74b711c479e
Alain Vongsouvanh [Thu, 21 Apr 2016 22:35:52 +0000 (22:35 +0000)]
DO NOT MERGE ANYWHERE: osi: Remove error_fclose goto and redundant fflush. am:
e52633cecf -s ours
am:
2be2e45a99 -s ours
* commit '
2be2e45a991f8f7dfcd0b4443e2d19f4117912db':
DO NOT MERGE ANYWHERE: osi: Remove error_fclose goto and redundant fflush.
Change-Id: Ib411b7d4676cc8456bc51e5891112d71538532a5
Amadeusz Slawinski [Thu, 21 Apr 2016 22:35:50 +0000 (22:35 +0000)]
DO NOT MERGE ANYWHERE: Add file write error checks to config_save am:
02f35e6a36 -s ours
am:
99184508a2 -s ours
* commit '
99184508a236c839db86ae92c97c585a9cd3d2aa':
DO NOT MERGE ANYWHERE: Add file write error checks to config_save
Change-Id: If6a034f76c58180b3e3ea6c8be88032b35c5b225
Chris Elliott [Thu, 21 Apr 2016 22:35:49 +0000 (22:35 +0000)]
Merge "DO NOT MERGE Revert "A2DP SRC offload support"" into mnc-dr1.5-dev
am:
e0800b66e0 -s ours
* commit '
e0800b66e011139186f89d0387a6c86fcc5b6ec7':
DO NOT MERGE Revert "A2DP SRC offload support"
Change-Id: I0cf27fb610f6a24ccc0eaf9dc5641f5034167411