| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: Ib41bca95e6be7831c5ce77bceaf6a3d9f8b37d41
|
|
|
|
|
|
|
| |
Include each sensor's power usage info in the per-sensor dumpsys
info section.
Change-Id: If10535d1e7fe6a35d9385ce2e6083a4c5188a06d
|
|\
| |
| |
| |
| |
| |
| |
| | |
https://android.googlesource.com/platform/frameworks/native into cm-13.0
Android 6.0.1 release 3
Change-Id: I437aaf148d440a8144afe1454948980fc3b40cca
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Initial sensor flush at subscription is a mechanism to avoid sensors
to get stale samples before subscription happens. However, there is a
slight chance that a most recent sample will be lost during the flush
process. This is OK for continuous sensors but problematic in
on-change sensor as on-change event does not come continuously and
a lost event can cause inconsistent state in client. Flush at
subscription of on-change sensor is disabled in this CL to avoid new
important on-change event to be discarded during the initial flush
process.
Bugs: b/24647069
b/25241873
b/24804819
Change-Id: Ibda099c6b9f5fb6e200f13cf13a850b0026e9e7c
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Previously HAL orientation sensor would always be replaced if the HAL
did not provide a rotation vector sensor as well. Practically no HAL
does, so the virtual sensor would always replace it.
* Add the virtual sensor only if the HAL does not provide it.
Change-Id: I50ad2cd6c60b53eddc4c6854997ec2e3dbff0d1a
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* In KitKat and on most Samsung devices, the orientation sensor is
not getting registered, and makes the compass non-working in a lot
of apps. This patch enables the sensor for such devices.
Change-Id: I0ebba72ec4aa2cfa02c21a6daff0c356c6793fd0
(cherry picked from commit 98fa6f1152da759ef3eaf36cb16e0aaf2013376a)
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The sensors API introduced a new flush() method that older binaries
won't have. For those, replace the firstFlush invocation with a
setDelay call since a lot of implementations interpreted that as
the initialization step.
We also don't want any kind of call to flush() to happen when it
isn't there, since it'll either hit a random OEM extension or
a memory address we really don't want to execute.
Change-Id: I26ce923fe385751fed7d1c483a53c074249f0620
sensorservice: Set the rate for pre-1.1 HALs _after_ activation
We want to be sure these are applied in the same sequence they
used to be...
Change-Id: Ied2ba08ed3c4bed3a80bac6ab5471fcea9ba2c09
|
|
|
|
|
|
|
| |
fusion sensors.
Bug: 22502485
Change-Id: I3d9018649302b98004e4e216b2173e8411a08501
|
|
|
|
|
| |
Bug: 22076400
Change-Id: I62129549b0681f200f40da01f53140245309ed88
|
|
|
|
| |
Change-Id: I415cf8ff0871fa74babaf9b879c68f210298b472
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I1491740baa6348f97c336b6883b11ad2ab93cf73
|
|/
|
|
|
|
|
| |
i) Log last 20 activations/deactivations of sensors.
ii) Increase logging upto 50 events for accelerometer, step_counter and significant motion.
Change-Id: I3966ed0abda8b705f3d16e94a9370fa1b97baa57
|
|
|
|
| |
Change-Id: Ie81cb0d5f537d5431f2127891cca1d39c969ee7b
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
Maintain a per sensor circular buffer of last 10 sensor_events and the wall clock time
at which each event is received.
Change-Id: Ia50c825ab5a7aaf0932ce7dce7ac8b9be7071e77
|
|\ \ |
|
| |/
| |
| |
| | |
Change-Id: Ieaee26f46f43a9d412537047566178985370198b
|
| |
| |
| |
| |
| | |
Change-Id: I3ed5247d3eb6c43d185049cf9011c2ee01b5662e
Signed-off-by: Sasha Levitskiy <sanek@google.com>
|
|/
|
|
| |
Change-Id: I727a2bb1e28ae9158f2df9c74dd0aee977dfd47f
|
|
|
|
| |
Change-Id: I0cd32a017235c31c54816e4a357ce3b988350ed6
|
|
|
|
|
|
|
| |
In restricted mode, only CTS tests can register for sensors or call flush() on them. The requests
from other applications will be ignored.
Change-Id: Ieb923df3e0cfe3390fe2d052af776da79589744b
|
|\
| |
| |
| |
| |
| |
| | |
overloads BBinder::dump"
* commit '46ca041f43e3d80029782b12c994b232dc01b5d5':
Don't error out because SensorEventConnection::dump overloads BBinder::dump
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
clang warns about SensorEventConnection::dump overloading BBinder::dump
in some conditions.
Since the cause isn't fixable without changing the API, tell clang not
to error out on it.
Change-Id: I15659de7c5499d937019599cfefb01305039e6b5
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
|
|\ \
| |/
| |
| |
| | |
* commit '45aa022710165c321cdec9a475f269d6932fe1f3':
Fix potential format string vulnerability
|
| |
| |
| |
| |
| |
| |
| |
| | |
A sensor name containing a format string could have interesting side
effects...
Change-Id: If7f1378aa68572d9716c339728eab18faa6b9f2a
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
|
|/
|
|
|
|
|
|
|
| |
If SensorService is holding a wake_lock and there are no acknowledgements
from ANY app within 5 seconds, release the wake_lock and reset the wake_lock
refcounts for all connections.
Bug: 16874240
Change-Id: I5e950dd393c20173c439cbd5a4ba614ee09d61f4
|
|
|
|
| |
Change-Id: I64f9482ade523ec3fafe14bff14db7196e32413f
|
|
|
|
|
|
|
|
| |
In some cases this is causing a crash as device.poll is called with
NULL.
Bug: 17896339
Change-Id: Id431599f2c661338c355c7081b6602f8449a9198
|
|
|
|
|
|
|
|
|
|
|
|
| |
i) Call removeFd() only if the fd in the BitTube has been
previously added to the Looper. Use a flag to determine whether the fd
has been previously added or not.
ii) Increment mPendingFlushEventsToSend after holding a connectionLock.
iii) Store the number of acks that are pending in SensorEventQueue
and send them all at once.
Bug: 17472228
Change-Id: I1ec834fea1112a9cfbd9cddd2198438793698502
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If the destructor of SensorEventConnection gets called when the main
sendEvents loop of SensorService is executing it may result in a deadlock.
The loop promotes each connection to a strong_pointer, calls sendEvents
and cleans up the connection if necessary. It is possible that the sp's
destructor may delete SensorEventConnection which will call the dtor
~SensorEventConnection(). This dtor again needs SensorService mLock to
execute which may result in a deadlock.
Bug: 17617897
Change-Id: I76c244dbe85fadb591c0bd1a9a5eb01d93f56505
|
|/
|
|
|
|
|
|
| |
the connection is removed from mActiveConnections."
This reverts commit 5105960d49bfa86efeeea8f87c87aa96b5771c37.
Change-Id: I4d39ded2e50ef8a8e0aac27e438876203385a1f0
|
|
|
|
|
|
|
| |
when the connection is removed from mActiveConnections.
Bug: 17472228
Change-Id: Iaabe0968bd2104ef961ff5e8659bf91712e2e1db
|
|
|
|
|
|
|
|
|
|
| |
i) Initialize sensor_event.flags to zero or wake_up flag before sending dropped flush_complete_events. This will avoid unnecessary acks.
Currently it is not set to anything which may result in garbage values for flags field.
ii) Change the dump format of SensorEventConnection.
iii) Add const to method signatures wherever applicable.
Bug id: https://b2.corp.google.com/issues/17498626
Change-Id: Ia736ffb01c366540aab73cdcf596ce852c052593
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
i) Significant Motion multiple clients fix. Make a copy of
mActiveConnections vector before cleaning up SensorEventConnections
when one-shot sensors trigger.
ii) Maintain a mapping between flush_complete_events and
SensorEventConnections to accurately map flush() API calls and
corresponding flush_complete_events
iii) Remove all references to 1_1 and 1_2 HALs.
iv) Dynamically allocate sensor_event buffers in SensorService main
threadLoop.
Bug: 17412359
Change-Id: If3c3986197660cafef2d2e0b4dc7582e229cf1c4
|
|
|
|
|
|
|
|
|
|
| |
i) Fix a possible race condition when adding a pending flush connection
to mActiveSensors data structure.
ii) Invalidate flush_complete_events as soon as they are consumed by a
connection so that they are not used by other connections which are
registered for the same sensor.
Change-Id: I1491bea8c2081c4aab1feacc60add13b7aa26bb7
|
|
|
|
|
|
|
|
| |
1) Limit maxEventsToWrite depending on the size of the socket
buffer allocated (Fix for write failure on manta).
2) Do not call flush() if the sensor is not activated (OEM issue).
Change-Id: I81ea78dbdef3a3773af505ca1c9a5e39492c0b48
|
|
|
|
|
|
|
| |
i) Add more debug stats (acks needed, acks received)
ii) Comment out write failure message.
Change-Id: Iac892a66530849a2dd023d6f5628cd070a79537d
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1) Flush should only be received by the app calling flush(). Maintain
a queue of all flush() calls and send flush_complete events in that
order.
2) Log warnings for older HALs. Remove batch() calls with DRY_RUN flag.
3) Reallocate event cache when more sensors register and the desired
maxCacheSize increases. Clear NEEDS_ACK flag in the buffer whenever
there is a write() failure.
4) More dump information. Add wake-up flag, maxDelay and timestamps for
sensor events.
Bug: 16874778
Change-Id: I195646191059fd31f75f2f07886c0f98bf9b509a
|
|
|
|
|
|
|
|
|
| |
i) Send ack for wake_up sensors on the socket connection instead of using Binder RPC.
ii) Cache events per connection in case there are write failures. Compute cache size
from FIFO counts of sensors.
iii) Send FlushCompleteEvent only for apps that explicitly called flush().
Change-Id: I018969736b7794b1b930529586f2294a03ee8667
|
|
|
|
|
|
|
| |
This is to fix b/16189080.
BUG: 16189080
Change-Id: I78d44e82f797c0808891acde609040c46745a0bb
|
|\ |
|
| |
| |
| |
| | |
Change-Id: Iac8dd3408c90eb7d285a2e8043131fab3a7e58fa
|
|\ \
| |/
|/|
| |
| | |
* commit '20914f0ad3691d977f61f1d4b92b49535e8f6f33':
sensorservice: 64-bit compile issues
|
| |\
| | |
| | |
| | |
| | | |
* commit 'a4e345e169fd9101011e358abdfb9308bc065bdb':
sensorservice: 64-bit compile issues
|
| | |
| | |
| | |
| | | |
Change-Id: Ied7b779f39e71d041791729f7355b052b63903c5
|
| | |\
| | | |
| | | |
| | | |
| | | | |
* commit 'cdbf28b3f7f5327f4cb0eb95b8326bf4c24c87ba':
native frameworks: 64-bit compile issues
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
SensorFusion is always returning data at the slowest possible sampling rate (5 Hz). batch() is getting called twice, first time with the requested rate and second time with the slowest rate (which overwrites the requested rate). Fix batch call in SensorFusion::activate()
Bug: 12064319
Change-Id: If62f3e514233f69810336fd22b136b4395b667d3
(cherry picked from commit 88509090387eeb400771a786171866710cca230c)
|
| | | |
| | | |
| | | |
| | | | |
Change-Id: Idd1e9045190beeca87b086b272e8cbf0bed05bae
|