3038 Commits

Author SHA1 Message Date
Hung-ying Tyan
194bbcce9b SIP: longer timeout for making call, shorter for cancelling
http://b/3021865

Change-Id: I354ebcc00f1ac68e4b7b466745c36aeb314f9138
2010-09-25 06:09:00 +08:00
Robert Greenwalt
8f97fe551e Merge "Move long Connectivity tasks to handler thread." into gingerbread 2010-09-24 10:42:46 -07:00
Eric Laurent
880dfe4f67 Merge "Fix issue 3007862" into gingerbread 2010-09-24 09:43:24 -07:00
Eric Laurent
98c92599ac Fix issue 3007862
Removed a cross deadlock condition between audioflinger and audio policy
service mutexes.
Audioflinger::createEffect() locks audioflinger mutex and then calls
AudioSystem::getOutputForEffect() which ends up in
AudioPolicyService::getOutputForEffect() which locks audio policy service
mutex. If at the same time, the command thread in audio policy service is
processing a command(set volume, set route...), the mutex is locked and the
command will call one audioflinger method which in turn will attempt to
lock audioflinger mutex.
The fix consists in releasing audioflinger mutex before calling
getOutputForEffect().

Change-Id: Id44e7feb36e0a295731f6aa97cf32d022edd34d0
2010-09-24 09:32:40 -07:00
Chia-chi Yeh
658bec9567 SDP: remove dead code.
Change-Id: I2a5764a2b9cabc54b0ac18666e494c1cb39c4e9b
2010-09-24 10:17:42 +08:00
Hung-ying Tyan
84a357bb6a Refactoring SIP classes to get ready for API review.
+ replace SipAudioCall and its Listener interfaces with real implementations,
  + remove SipAudioCallImpl.java, most of it is has become part of SipAudioCall,
+ add SipSession and its Listener classes to wrap ISipSession and ISipSessionListener,
+ move SipSessionState to SipSession.State,
+ make SipManager keep context and remove the context argument from many methods of its,
+ rename SipManager.getInstance() to newInstance(),
+ rename constant names for action strings and extra keys to follow conventions,
+ set thread names for debugging purpose.

Change-Id: Ie1790dc0e8f49c06c7fc80d33fec0f673a9c3044
2010-09-24 10:06:59 +08:00
Joe Onorato
cbb7b05e35 Merge "Crash apps when they provide bad notifications instead of crashing the system process." into gingerbread 2010-09-23 16:52:28 -07:00
Joe Onorato
eaa0718780 Crash apps when they provide bad notifications instead of crashing the system process.
Bug: 2958415
Change-Id: I9cbef340fb20a64eca8493950b814399c26ce197
2010-09-23 16:49:20 -07:00
Robert Greenwalt
8dcc28be06 Move long Connectivity tasks to handler thread.
Reduce ANR potential.
bug:2942829

Change-Id: I21610b462d5ab91821015cd16eecd86d2c0580d1
2010-09-23 16:43:21 -07:00
Chung-yih Wang
f43ac91137 Merge "Handle OPTIONS requests from SIP servers." into gingerbread 2010-09-23 16:36:18 -07:00
Dianne Hackborn
287952c35e Fix issue #3022508: Crash during media scan
Don't kill processes for excessive wake lock use, even if they
are in the background, as long as they have running services.

Also fix some problems with this, such as not noting the kill
in battery stats.

And add killing of processes for cpu usage as well, along with
some optimizations to computing CPU usage.

And fix BatteryWaster to be better behaving for testing these
cases.

Add new "monitor" command to am to watch as the activity manager
does stuff (so we can catch things at the point of ANR).

Finally some miscellaneous debug output for the stuff here, as
well as in progress debugging of an ANR.

Change-Id: Ib32f55ca50fb7486b4be4eb5e695f8f60c882cd1
2010-09-23 15:59:28 -07:00
Dianne Hackborn
045398e624 Merge "Fix a deadlock I ran into." into gingerbread 2010-09-23 14:15:45 -07:00
Chung-yih Wang
0b4d2fb114 Handle OPTIONS requests from SIP servers.
Change-Id: I849d5ea4c4c56a06d25ccdc6b959274c59c47200
2010-09-24 00:53:10 +08:00
Robert Greenwalt
e87ebb08fb Merge "Cleanup Netd to prevent getting hung." into gingerbread 2010-09-23 08:41:21 -07:00
Dianne Hackborn
0674069aa4 Fix a deadlock I ran into.
Activity manager was calling into the backup service (and other
things) with its lock held.

Change-Id: Id55093e09cc5fe81b73b85968184816d956e0ae8
2010-09-22 22:46:21 -07:00
Brad Fitzpatrick
89647b1172 Don't do single byte writes in DropBoxManagerService
Bug: 3018772
Change-Id: I6990041f059aeb2a4c29e59b1a3d78d19bf9b02f
2010-09-22 17:49:16 -07:00
Robert Greenwalt
e5c3afb292 Cleanup Netd to prevent getting hung.
If the sending of the command fails we should note it and not wait forever
for the response.

We should also not say we're ready until we actually are.

bug:2993205
Change-Id: I380f0312ac4693ad184a526b330fdfa23f6ac558
2010-09-22 16:43:23 -07:00
Amith Yamasani
95f600b55f Merge "Fix NPE in PowerManagerService on boot, if some settings are corrupted." into gingerbread 2010-09-22 16:29:49 -07:00
Amith Yamasani
8b61983ee8 Fix NPE in PowerManagerService on boot, if some settings are corrupted.
Bug: 2715038
Change-Id: I10c08b359ff3cde732c37eb6dff0877cdb021cd9
2010-09-22 16:11:59 -07:00
Eric Laurent
14beea487c Request permission for global audio effects.
Applications creating an audio effect on the output mix must
have the MODIFY_AUDIO_SETTINGS permission.

Change-Id: I57d88533f91ad0d33680107d79abcec28f7263b5
2010-09-22 15:58:38 -07:00
Mike Lockwood
32371695da Merge "GpsLocationProvider: Fix race condition while bringing up APN for SUPL." into gingerbread 2010-09-22 09:54:53 -07:00
Hung-ying Tyan
ca54cdaf66 Merge "SipService: fix thread/socket leak" into gingerbread 2010-09-22 09:35:35 -07:00
Mike Lockwood
2acfd34ccb GpsLocationProvider: Fix race condition while bringing up APN for SUPL.
If handleUpdateNetworkState() is called before
ConnectivityManager.startUsingNetworkFeature() returns, then we will not
call native_agps_data_conn_open() to inform the GPS that the APN is up.
So we now set mAGpsDataConnectionState to AGPS_DATA_CONNECTION_OPENING
before calling ConnectivityManager.startUsingNetworkFeature() to avoid
this problem.

Change-Id: I5e1597d6494dc8ab68e608911c546a7a04f2ea07
Signed-off-by: Mike Lockwood <lockwood@android.com>
2010-09-22 12:22:26 -04:00
Hung-ying Tyan
fc51f2c972 SipService: fix thread/socket leak
Should call SipSessionGroup.close() instead of closeNotToReceiveCalls() to stop
the SIP stack (which will stop the MessageProcessor thread and close its socket).

Might be related to ANR's reported by:
http://b/issue?id=3021924
http://b/issue?id=3021927

Change-Id: I4ead1d81fc9abac983f5753b825d20bc1cc79866
2010-09-23 00:02:34 +08:00
Jeff Brown
57c59376f4 Fix race reading input configuration during system startup.
Change-Id: I9360c4ec5c29937fce06b44ffc71fca58c8b3d5f
2010-09-21 18:22:55 -07:00
Irfan Sheriff
0859b76471 Make wifi scan async. (don't auto-merge)
When an entity (NLP for example) acquires
a WifiLock and initiates a scan, scan can
get blocked until driver starts.

scan returns no useful info, scan results
are broadcast when obtained.

Bug: 2964633
Change-Id: Iaefc32bb6b82f0718285a18ac600e6bbbb096e77
2010-09-21 12:38:09 -07:00
Robert Greenwalt
6548f395a9 Merge "Inet status bug fix" into gingerbread 2010-09-21 08:06:15 -07:00
Robert Greenwalt
029be81302 Inet status bug fix
Don't wipe out the connected status every time we get a cellular status change.
Don't filter out disconnect event for wifi - we need them.

bug:3009923
Change-Id: I68cadac5f44d6eb4e0fe711fda7c5d218abb45bd
2010-09-21 05:38:36 -07:00
Dianne Hackborn
034093a4ae Fix issue #2999757: "Application Redirected" dialogue showing up erratically
Give up on this for now.

Change-Id: Ic66a36d468f8bcb313d9bde2809124cdfd74adb3
2010-09-20 22:24:38 -07:00
Dianne Hackborn
51aaab3d6b Merge "Fix #2999258: ANR in Settings after every reboot" into gingerbread 2010-09-20 22:19:47 -07:00
Robert Greenwalt
313af5a3b5 Merge "Add Inet Condition log to bugreports" into gingerbread 2010-09-20 21:29:02 -07:00
Dianne Hackborn
8891fdc1da Fix #2999258: ANR in Settings after every reboot
The main problem here was in the error recovery when we are waiting
for a process to start but it has failed for some reason.  The code
was just setting mPendingBroadcast to null, but this would cause
an eventual ANR because the state was not set back to IDLE so we
would continue waiting for the broadcast without trying to restart
its process.

Now we set it to idle.  We also need to reset the "nextReceiver"
index, so there is a new mPendingBroadcastRecvIndex variable holding
what it should be set back to.

While digging into this, I found a number of other lesser problems:

- There is a race when booting the system where we set mSystemReady
to true before restarting the upgrade processes.  This could allow
a broadcast to happen between those two and its process to immediately
be removed.  To fix this, there is a new mProcessesReady that is set
once we are truly ready to start launching processes.

- There were various places where we were calling sendBroadcastLocked()
without the flag to send only to receivers...  if this is called before
mProcessesReady is set, then we would end up sticking any process for
the broadcast on the holding list to not get launched until later
(and hang up all broadcasts as they want for it).  Now we always make
sure to set this appropriately.

- sendBroadcastInPackage() was not doing all of the validation that
sendBroadcast() does.

And of course a bunch of new debugging logs that were done in the
course of tracking this down.

Change-Id: I6134bbd94fdb73db8b693507b29499eae012d543
2010-09-20 20:52:51 -07:00
Mike Lockwood
307aef0125 Merge "LocationManager: Hide location provider and geocode provider APIs." into gingerbread 2010-09-20 17:16:03 -07:00
Mike Lockwood
e15735a9e0 LocationManager: Hide location provider and geocode provider APIs.
Also rename Geocoder.isImplemented() to Geocoder.isPresent()

BUG: 3000738
BUG: 3001413

Change-Id: I56bb4e9a9c59f8b79de585eeb168f74c3ff1a853
Signed-off-by: Mike Lockwood <lockwood@android.com>
2010-09-20 20:14:34 -04:00
Dianne Hackborn
e25a264c4e Merge "DO NOT MERGE. Wifi service now blames apps for its wake lock use." into gingerbread 2010-09-20 17:03:15 -07:00
Dianne Hackborn
c8314b05b4 DO NOT MERGE. Wifi service now blames apps for its wake lock use.
Change-Id: Ic57d8f77527bbfea6a129b8f348fe9108157b4d8
2010-09-20 16:58:41 -07:00
Dianne Hackborn
4db643eb84 Merge "In theory the package manager now scans /vendor/app" into gingerbread 2010-09-20 16:54:22 -07:00
Dianne Hackborn
3b4bac7a2a In theory the package manager now scans /vendor/app
Not tested.

Change-Id: Ib6120d645074c95dd0afd1476f6167aec5d50bb9
2010-09-20 16:35:22 -07:00
Dianne Hackborn
ce2ef766ca Some battery improvements:
- New API for iterating over history that will allow a better implementation
  in the future.
- Now do writes asynchronously.

Also improve the documentation for Activity.onRetainNonInstanceState().

Change-Id: Idf67f2796a8868eb62f288bcbb2bad29876c8554
2010-09-20 16:25:01 -07:00
Robert Greenwalt
4e8dfefb06 Add Inet Condition log to bugreports
Reports who reports what condition on which network at what time.  Where is implied.

Change-Id: I89fbc7323dec438041859fcc934169fa325f0133
2010-09-20 16:00:44 -07:00
Hung-ying Tyan
b17eae9e22 SipService: move event handling out of system server's main thread
http://b/issue?id=2998047

Change-Id: Ibe0b6a19bb8b453fa852a94b3daf3cb80d7377b0
2010-09-20 10:10:34 +08:00
Hung-ying Tyan
97963794af SIP: convert enum to static final int.
Converts SipErrorCode and SipSessionState.

Change-Id: Iee3a465649ea89d395b2336bbd673c25113e5f93
2010-09-20 09:51:31 +08:00
Hung-ying Tyan
5b930c49b1 Merge "SIP: add config flag for wifi-only configuration." into gingerbread 2010-09-19 18:02:13 -07:00
Hung-ying Tyan
c4b87477c0 SIP: add config flag for wifi-only configuration.
http://b/issue?id=2994029

Change-Id: I328da9b0f8b70d660dbcefffdac8250341792101
2010-09-20 08:03:20 +08:00
Mike Lockwood
ba56dfce7c DO NOT MERGE Tethering: Delay 1000ms before processing USB disconnect events
This change is already in master

On some devices, switching the USB configuration to enable RNDIS can
result in multiple USB disconnect/reconnect events being generated.

Change-Id: I14b02aaca11bb708f6b3334e41a2f4d4fa7b7296
Signed-off-by: Mike Lockwood <lockwood@android.com>
2010-09-19 14:04:38 -04:00
Dianne Hackborn
58e0eefeb5 Improve power tracking of WIFI use.
We now distribute "wifi started" time across all apps that are
holding WIFI locks that cause it to be started.  But only when
WIFI would not normally be running.  Also have a mechanism to
distribute other WIFI work that has happened across those processes
based on their use.

Also fixed a bug where we were not retaining the CPU speed step
stats across boots...!

Change-Id: I00e3153b98429166273750512cc37e7975211ab9
2010-09-17 15:14:57 -07:00
Hung-ying Tyan
9404e633a5 Merge "Add timer to SIP session creation process." into gingerbread 2010-09-16 23:30:49 -07:00
Hung-ying Tyan
9352cf1a4d Add timer to SIP session creation process.
+ add timer parameter to ISipSession.make/changeCall(),
+ add timer paramter to SipAudioCall.make/answer/hold/continueCall()'s,
+ add timer parameter to SipManager.makeAudioCall(),
+ modify implementation in SipSessionGroup, SipAudioCallImpl accordingly,
+ make SipPhone to use it with 8-second timeout.

http://b/issue?id=2994748

Change-Id: I661a887e5810087ddc5e2318335e2fa427f80ec6
2010-09-17 13:31:05 +08:00
Mathias Agopian
1bcb8b1afb Merge "surfaceflinger / GL extensions cleanup" into gingerbread 2010-09-16 17:55:05 -07:00
Jeff Brown
54a1825121 Fix app switch latency optimization.
This optimization was broken due to recent changes in how ANRs are handled.

Change-Id: Ic99248a12755fadac8d4893e7d305b773e038d3d
2010-09-16 16:41:46 -07:00