summaryrefslogtreecommitdiffstats
path: root/services/sensorservice
Commit message (Collapse)AuthorAgeFilesLines
* am 46ca041f: Merge "Don\'t error out because SensorEventConnection::dump ↵Chih-hung Hsieh2014-11-251-0/+7
|\ | | | | | | | | | | | | overloads BBinder::dump" * commit '46ca041f43e3d80029782b12c994b232dc01b5d5': Don't error out because SensorEventConnection::dump overloads BBinder::dump
| * Don't error out because SensorEventConnection::dump overloads BBinder::dumpBernhard Rosenkränzer2014-11-251-0/+7
| | | | | | | | | | | | | | | | | | | | | | 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>
* | am 45aa0227: Merge "Fix potential format string vulnerability"chh2014-11-251-6/+3
|\ \ | |/ | | | | | | * commit '45aa022710165c321cdec9a475f269d6932fe1f3': Fix potential format string vulnerability
| * Fix potential format string vulnerabilityBernhard Rosenkränzer2014-11-241-6/+3
| | | | | | | | | | | | | | | | 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>
* | Add a timeout for releasing SensorService wake_lock.Aravind Akella2014-11-012-30/+102
|/ | | | | | | | | 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
* Add version number to SensorService dump output.Aravind Akella2014-10-191-1/+2
| | | | Change-Id: I64f9482ade523ec3fafe14bff14db7196e32413f
* Change ordering of memory allocation and calling Thread::run().Aravind Akella2014-10-071-2/+2
| | | | | | | | In some cases this is causing a crash as device.poll is called with NULL. Bug: 17896339 Change-Id: Id431599f2c661338c355c7081b6602f8449a9198
* Fix sockfd leakage in SensorService.Aravind Akella2014-10-022-31/+128
| | | | | | | | | | | | 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
* Merge "Fix a possible SensorService deadlock." into lmp-devAravind Akella2014-09-291-11/+25
|\
| * Fix a possible SensorService deadlock.Aravind Akella2014-09-281-11/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Revert "Fix sockfd leakage in SensorService. Remove sockfd from Looper when ↵Aravind Akella2014-09-271-2/+0
|/ | | | | | | | the connection is removed from mActiveConnections." This reverts commit 5105960d49bfa86efeeea8f87c87aa96b5771c37. Change-Id: I4d39ded2e50ef8a8e0aac27e438876203385a1f0
* Fix sockfd leakage in SensorService. Remove sockfd from Looper Aravind Akella2014-09-231-0/+2
| | | | | | | when the connection is removed from mActiveConnections. Bug: 17472228 Change-Id: Iaabe0968bd2104ef961ff5e8659bf91712e2e1db
* SensorService fixes.Aravind Akella2014-09-152-28/+33
| | | | | | | | | | 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
* SensorService fixesAravind Akella2014-09-102-63/+84
| | | | | | | | | | | | | | | 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
* SensorService flush fixes.Aravind Akella2014-09-032-53/+63
| | | | | | | | | | 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
* SensorService fixesAravind Akella2014-08-222-21/+42
| | | | | | | | 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
* SensorService fixes.Aravind Akella2014-08-212-4/+24
| | | | | | | i) Add more debug stats (acks needed, acks received) ii) Comment out write failure message. Change-Id: Iac892a66530849a2dd023d6f5628cd070a79537d
* SensorService fixes.Aravind Akella2014-08-193-118/+221
| | | | | | | | | | | | | | | 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
* SensorService performance improvements.Aravind Akella2014-07-242-72/+314
| | | | | | | | | 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
* CW on L: Fix a SIGSEGV crash in sensor service.Sean Wan2014-07-151-2/+6
| | | | | | | This is to fix b/16189080. BUG: 16189080 Change-Id: I78d44e82f797c0808891acde609040c46745a0bb
* Merge "Surface reportingMode for Sensors."Aravind Akella2014-06-121-17/+24
|\
| * Surface reportingMode for Sensors.Aravind Akella2014-06-121-17/+24
| | | | | | | | Change-Id: Iac8dd3408c90eb7d285a2e8043131fab3a7e58fa
* | am 20914f0a: am a4e345e1: Merge "sensorservice: 64-bit compile issues"Mark Salyzyn2014-06-122-17/+20
|\ \ | |/ |/| | | | | * commit '20914f0ad3691d977f61f1d4b92b49535e8f6f33': sensorservice: 64-bit compile issues
| * am a4e345e1: Merge "sensorservice: 64-bit compile issues"Mark Salyzyn2014-06-122-17/+20
| |\ | | | | | | | | | | | | * commit 'a4e345e169fd9101011e358abdfb9308bc065bdb': sensorservice: 64-bit compile issues
| | * sensorservice: 64-bit compile issuesMark Salyzyn2014-06-102-17/+20
| | | | | | | | | | | | Change-Id: Ied7b779f39e71d041791729f7355b052b63903c5
| | * am cdbf28b3: Merge "native frameworks: 64-bit compile issues"Mark Salyzyn2014-03-1310-22/+23
| | |\ | | | | | | | | | | | | | | | | * commit 'cdbf28b3f7f5327f4cb0eb95b8326bf4c24c87ba': native frameworks: 64-bit compile issues
| | * | Bug fix for SensorFusion data rate.Aravind Akella2014-03-062-13/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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)
* | | | Surface maxDelay and isWakeUpSensor flag in Sensor.java.Aravind Akella2014-05-232-4/+0
| | | | | | | | | | | | | | | | Change-Id: Idd1e9045190beeca87b086b272e8cbf0bed05bae
* | | | Enable wakeup sensors.Aravind Akella2014-04-233-62/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SensorService should hold a wakelock till the app reads events from a wakeup sensor. Currently drivers hold a wakelock with a timeout while delivering events from a wake up sensor like Significant Motion. This hack can be removed now. Bug: 9774884 Change-Id: If3b5acb99c9cf0cd29012fcfa9d6b04c74133d01
* | | | am ef89f763: am cf818ebb: Merge "Add stringType and requiredPermission to ↵Aravind Akella2014-04-112-19/+80
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | | | | | sensors, effectively adding permission checking for sensors" into klp-modular-dev * commit 'ef89f7638c43ce5f73e32d487bf65c3375995e3b': Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
| * | | am cf818ebb: Merge "Add stringType and requiredPermission to sensors, ↵Aravind Akella2014-04-112-19/+80
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | effectively adding permission checking for sensors" into klp-modular-dev * commit 'cf818ebbf07c6a20ef48d71bf82f8d4bdf3a398c': Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
| | * | | Add stringType and requiredPermission to sensors, effectively adding ↵Aravind Akella2014-04-112-19/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | permission checking for sensors This reverts commit 4369a4ebd5ae7567e7075bc82830b83178099ed5. Change-Id: Ifa8619cc6873470a07a987763d818d78d4232610
| * | | | am 4369a4eb: Revert "Add stringType and requiredPermission to sensors, ↵Etienne Le Grand2014-04-052-80/+19
| |\ \ \ \ | | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | effectively adding permission checking for sensors" * commit '4369a4ebd5ae7567e7075bc82830b83178099ed5': Revert "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors"
| | * | | Revert "Add stringType and requiredPermission to sensors, effectively adding ↵Etienne Le Grand2014-04-052-80/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | permission checking for sensors" This reverts commit c57a019e117117c5a76c772970b26cd0f5db8c6a. Change-Id: I3540565bc3e56a32cf3b176a29216cf68bb763b2
* | | | | Revert "Add stringType and requiredPermission to sensors, effectively adding ↵Etienne Le Grand2014-04-052-80/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | permission checking for sensors" This reverts commit c57a019e117117c5a76c772970b26cd0f5db8c6a. Change-Id: I3540565bc3e56a32cf3b176a29216cf68bb763b2 (cherry picked from commit 4369a4ebd5ae7567e7075bc82830b83178099ed5)
* | | | | am 00f4dde1: am c57a019e: Add stringType and requiredPermission to sensors, ↵Etienne Le Grand2014-04-052-19/+80
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | effectively adding permission checking for sensors * commit '00f4dde1aa88576811bca79bc8242e1fc1edb333': Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
| * | | | am c57a019e: Add stringType and requiredPermission to sensors, effectively ↵Etienne Le Grand2014-04-052-19/+80
| |\ \ \ \ | | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | adding permission checking for sensors * commit 'c57a019e117117c5a76c772970b26cd0f5db8c6a': Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
| | * | | Add stringType and requiredPermission to sensors, effectively adding ↵Etienne Le Grand2014-04-042-19/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | permission checking for sensors Change-Id: If0f3dbdb5d2e9378e1fed4614baee4e750d0c850
* | | | | am d4dabf87: am cdbf28b3: Merge "native frameworks: 64-bit compile issues"Mark Salyzyn2014-03-1310-22/+23
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | * commit 'd4dabf872ac0a12e12aebae9032f7d62762c2aeb': native frameworks: 64-bit compile issues
| * | | | am cdbf28b3: Merge "native frameworks: 64-bit compile issues"Mark Salyzyn2014-03-1310-22/+23
| |\ \ \ \ | | |/ / / | |/| | / | | | |/ | | |/| * commit 'cdbf28b3f7f5327f4cb0eb95b8326bf4c24c87ba': native frameworks: 64-bit compile issues
| | * | native frameworks: 64-bit compile issuesMark Salyzyn2014-03-1210-22/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Fix format (print/scanf) - Suppress unused argument warning messages (bonus) Change-Id: I05c7724d2aba6da1e82a86000e11f3a8fef4e728
* | | | am e7643e43: am 8ae7c02e: am ffac23b2: am 4b84704b: Ignore flush complete ↵Aravind Akella2014-03-062-12/+13
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | | | | | events when recording last value for a sensor. * commit 'e7643e431abc2d1b42ab1d68913ec22d0b180554': Ignore flush complete events when recording last value for a sensor.
| * | | am ffac23b2: am 4b84704b: Ignore flush complete events when recording last ↵Aravind Akella2014-03-062-12/+13
| |\ \ \ | | | |/ | | |/| | | | | | | | | | | | | | | | | value for a sensor. * commit 'ffac23b210a96e769fd79ae912b44a185e7d69bd': Ignore flush complete events when recording last value for a sensor.
| | * | Ignore flush complete events when recording last value for a sensor.Aravind Akella2014-03-062-12/+13
| | |/ | | | | | | | | | | | | Bug: 11822806 Change-Id: I1402d6684ed71ed413aef6a7be3aad945b331ec2
| * | Bug fix for SensorFusion data rate.Aravind Akella2014-01-312-13/+4
| |/ | | | | | | | | | | | | 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
* | Add uid to sensorservice's dump of active connectionsPatrick Tjin2014-02-051-2/+3
| | | | | | | | Change-Id: I1c365157bcd28a93635dbde4a8d91c79750e03ae
* | Bug fix for SensorFusion data rate.Aravind Akella2013-12-102-13/+4
| | | | | | | | | | | | | | 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
* | am 245c4339: am 46417b84: Merge "Bug fixes for SensorService" into klp-devAravind Akella2013-10-252-1/+12
|\ \ | |/ | | | | | | * commit '245c43395b9bb6502e0a4bcde4c60ad9541e5ce2': Bug fixes for SensorService
| * Bug fixes for SensorServiceAravind Akella2013-10-252-1/+12
| | | | | | | | | | | | | | | | | | i) Emulate Flush for AOSP Fusion Sesnsors on newer HALs that support batching. ii) Early return if there are no events for the current SensorEventConnection. Bug: 11325707, 11376538 Change-Id: Idb856302463649a99d3d5d0c965bb06ba06b8e1d
* | am 487c7815: am 641a1868: Merge "SensorService Flush API bug fix." into klp-devAravind Akella2013-10-152-34/+19
|\ \ | |/ | | | | | | * commit '487c7815d7d81570c4f2cf37ceddf10ec84e0c39': SensorService Flush API bug fix.