Samsung Galaxy S: phone won't send or receive calls and text messages I own a rooted Samsung Galaxy S, running 2.2 Froyo. My service provider is AT&amp;T.

Every so often, around about once a week to once a month, my phone will unexpectedly, without warning, enter a state where it refuses to send or receive text messages and phone calls. The only way I've found to get my phone to work normally again is by rebooting.

Specifically, if I try sending a text message, it just says sending but never actually seems to send anything. I don't receive any text messages at all (and when I turn my phone back on, I might receive several at once that were sent over an hour ago). 

I don't receive any phone calls. 

When I try calling somebody, I don't hear the 'ringing noise', and the phone attempts to call endlessly without actually doing so. If I give up, and try clicking the red 'End Call' button, it does return me to the homescreen but displays the phone symbol in the notification bar. 

If I slide the notification tray down, it has a sort of green 'in-progress' calling thing with a few buttons to mute or end the call. Attempting to end the call does absolutely nothing, and the 'call in-progress' thing is stuck there until I reboot.

However, the internet (both wifi and 3G) both seem to work.

I'm not sure exactly what causes this issue, or precisely how frequently this occurs. Since I only notice when I need to call somebody or am expecting a call, I suppose it's entirely possible that this issue occurs more frequently then I notice and just as silently resolves itself (although I have no idea how to check this).

I've tried searching on the internet, but wasn't able to find anything useful. Can somebody identify what's wrong with my phone, or help me diagnose the issue?

Edit:

Here's my logcat and here's the output I got after running adb bugreport. The error/crash last occurred on Thursday, Jan 10, 2013. I know that I wasn't receiving phone calls/text messages starting from at least about 3:20pm (Pacific time), and I rebooted the phone around 4:10-4:20pm.
I am suspecting, after reading the logcat and dump, the kernel killed off quite a few processes, whether its down to the ROM itself, or a buggy RIL (Radio Interface Layer), RIL is responsible for communicating with the cellular radio base-band firmware.

This is the excerpt from the kernel, showing Dolphin, Alarm Clock, Google Voice(?) getting killed off:

[125362.321461] select 2452 (ogle.android.gm), adj 8, size 5199, to kill
[125362.321481] select 2543 (.osp.app.signin), adj 9, size 3650, to kill
[125362.321495] select 2559 (pp.clockpackage), adj 9, size 4222, to kill
[125362.321512] send sigkill to 2559 (pp.clockpackage), adj 9, size 4222
[125363.255635] select 1225 (ek.TunnyBrowser), adj 7, size 19674, to kill
[125363.255657] select 2452 (ogle.android.gm), adj 8, size 5189, to kill
[125363.255671] select 2543 (.osp.app.signin), adj 9, size 3648, to kill
[125363.255684] select 2597 (gphone.acc.free), adj 9, size 3850, to kill
[125363.255699] send sigkill to 2597 (gphone.acc.free), adj 9, size 3850
[125364.339592] touch_led_control: 2 
[125365.378613] select 1225 (ek.TunnyBrowser), adj 7, size 19294, to kill
[125365.378646] select 2452 (ogle.android.gm), adj 8, size 5061, to kill
[125365.378664] select 2543 (.osp.app.signin), adj 9, size 3604, to kill
[125365.378681] select 2611 (ock.xtreme.free), adj 9, size 3969, to kill
[125365.378702] send sigkill to 2611 (ock.xtreme.free), adj 9, size 3969


This is the excerpt from the telephony, note the gap in time logged, last logged at 19:23:48.949 and 19:35:33.144:

01-13 19:23:48.949 D/RILJ    ( 2574): [14954]&gt; REQUEST_GET_NEIGHBORING_CELL_IDS
01-13 19:23:48.949 D/RILC    ( 2366): [14954]&gt; GET_NEIGHBORING_CELL_IDS 
01-13 19:23:48.949 D/RILC    ( 2366): [14954]&lt; GET_NEIGHBORING_CELL_IDS fails by E_REQUEST_NOT_SUPPORTED
01-13 19:23:48.949 D/RILJ    ( 2574): [14954]&lt; REQUEST_GET_NEIGHBORING_CELL_IDS error: com.android.internal.telephony.CommandException: REQUEST_NOT_SUPPORTED
01-13 19:35:33.144 D/RILJ    ( 2574): [14955]&gt; SCREEN_STATE: true
01-13 19:35:33.148 D/RILC    ( 2366): [14955]&gt; SCREEN_STATE (1)
01-13 19:35:33.152 D/GSM     ( 2574): [GsmMultiDCT] Stop poll NetStat
01-13 19:35:33.644 D/RILC    ( 2366): [UNSL]&lt; UNSOL_RESPONSE_NETWORK_STATE_CHANGED


Further on in the log related to telephony:

01-13 19:36:13.891 D/RILC    ( 2366): [14972]&lt; QUERY_NETWORK_SELECTION_MODE {0}
01-13 19:36:13.891 D/RILJ    ( 2574): [14971]&lt; SCREEN_STATE
01-13 19:36:13.891 D/RILJ    ( 2574): [14972]&lt; QUERY_NETWORK_SELECTION_MODE {0}
01-13 19:36:13.895 D/RILC    ( 2366): [14973]&lt; OPERATOR {AT&amp;T,AT&amp;T,310410}
01-13 19:36:13.899 D/RILJ    ( 2574): [14973]&lt; OPERATOR {AT&amp;T, AT&amp;T, 310410}
01-13 19:36:13.899 I/GSM     ( 2574): EVENT_POLL_STATE_OPERATOR
01-13 19:36:13.899 D/RILC    ( 2366): [14974]&lt; GPRS_REGISTRATION_STATE { 1,a7e9,007537ea,9}
01-13 19:36:13.899 D/RILJ    ( 2574): [14974]&lt; GPRS_REGISTRATION_STATE {1, a7e9, 007537ea, 9}
01-13 19:36:13.899 D/RILC    ( 2366): [14975]&lt; REGISTRATION_STATE {1,a7e9,007537ea,(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),0}
01-13 19:36:13.903 D/RILJ    ( 2574): [14975]&lt; REGISTRATION_STATE {1, a7e9, 007537ea, null, null, null, null, null, null, null, null, null, null, 0}
01-13 19:36:13.923 I/GSM     ( 2574): &lt;Leo&gt; PrePLMN: 310410, plmn: 310410, ss.getState(): 0
01-13 19:36:13.923 I/GSM     ( 2574): handlePollStateResult(); regState: 1, mNewLuRejCause: 0
01-13 19:36:13.923 D/GSM     ( 2574): Poll ServiceState done:  oldSS=[0 home AT&amp;T AT&amp;T 310410  HSDPA CSS not supported -1 -1RoamInd: -1DefRoamInd: -1EmergOnly: false] newSS=[0 home AT&amp;T AT&amp;T 310410  HSDPA CSS not supported -1 -1RoamInd: -1DefRoamInd: -1EmergOnly: false] oldGprs=0 newGprs=0 oldType=HSDPA newType=HSDPA
01-13 19:36:21.298 D/RILC    ( 2366): [0001]&gt; OEM_HOOK_RAW (raw_size=6)
01-13 19:36:21.302 D/RILC    ( 2366): [0001]&lt; OEM_HOOK_RAW
01-13 19:36:21.306 D/RILC    ( 2366): [UNSL]&lt; &lt;unknown request&gt; {0}
01-13 19:36:21.306 D/RILJ    ( 2574): processing unsol response: java.lang.RuntimeException: Unrecognized unsol response: 11012


The NITZ (Network Identity and Time Zone) crops up a fair bit too, as shown below within the same telephony log, IIRC, NITZ handling was not exactly great up to ICS, in which a patch was made to handle the handling of the timezones (either roaming when browsing the net or something awry went wrong with the RIL:

01-13 19:13:19.035 D/RILC    ( 2366): sendUnsolicitedResponses: multi client index=2, fd=28
01-13 19:13:19.035 D/RILC    ( 2366): [UNSL]&lt; UNSOL_NITZ_TIME_RECEIVED {13/01/14,03:13:18-32,00}


The telephony errors shown, are sticking out like a sore thumb, and also down to the fact that Froyo 2.2, is old, and may not be able to handle whatever issue is with AT&amp;T that causes it. Also, AT&amp;T could have had their systems updated/upgraded, that is sending out extra telephony information/NITZ in a format that Froyo cannot handle and freezes.

Best bet would be to try a firmware update and see if that resolves the issue. 

Prior to doing an update, since the handset is rooted, best to make a backup of everything, use Titanium Backup to backup user apps and data, use SMS Backup &amp; Restore to save the SMS messages. It will be inevitable that the upgrade will lose root, but then again, it would be easy to do that after the upgrade.