While poking around today, I discovered that I could deterministically cause "rild" to segfault - every time I tried it.
The method I used was to turn on WiFi with the Mobile Data network already running, and then I would launch the app "Wifi Analyzer" (farproc). Almost immediately the "rild" (Radio Interface Layer Daemon) would segfault. (Strictly speaking, I don't know if using WiFi Analyzer was necessary - my WiFi has beacons turned off, and sometimes I can't establish a session straight away; using a scanner seems to get my AP to come out of it's sleep).
That consistency convinced me to use strace to attach to the already-running "rild" daemon, and spew to a log file.
Note that historically, the SIGSEGV faults that were logged to the logcat output at the moment of the "undead call" implicated a problem in the fclose() call - almost as if something was trying to close a file that had not been opened correctly.
So, there in the strace output, was this:
Code:
16:43:23 writev(6, [{"\3", 1}, {"HTC_RIL\0", 8}, {"(t=1297817003)%% $HTC_3GIND:0\\r\\n\0", 35}], 3) = 44
16:43:23 open("/data/data/com.android.dmportread/history", O_WRONLY|O_CREAT|O_APPEND, 0666) = -1 ENOENT (No such file or directory)
16:43:23 chmod("/data/data/com.android.dmportread/history", 0666) = -1 ENOENT (No such file or directory)
16:43:23 writev(6, [{"\3", 1}, {"HTC_RIL\0", 8}, {"at_notify_cdma_g23_data_entry():Can't open /data/data/com.android.dmportread/history successfully \r\n\n\0",102}], 3) = 111
16:43:23 --- SIGSEGV (Segmentation fault) @ 0 (c) ---
a quick peek at /system/lib/libhtc_ril.so shows that - yep - buried in there is a reference to
/data/data/com.android.dmportread/history
So, I tried the following:
Code:
[COLOR=green][B]
mkdir /data/data/com.android.dmportread
chown radio:radio /data/data/com.android.dmportread
touch /data/data/com.android.dmportread/history
chown radio:radio /data/data/com.android.dmportread/history
[/B][/COLOR]
and guess what - no more segfaults. [SIZE=+3]YES![/SIZE]
If this is the cause of the "undead" call (seems highly likely), the explanation appears to be due to a bug in the HTC vendor library lbhtc_ril.so : a file open() fails, but the corresponding "close()" operation takes place anyway, and that is where the fault (segmentation violation) occurs. There is a stupid dependency of the libhtc_ril.so file on the DMPortRead.apk app.
Probably the only reason that this bug does not express itself in HTC "factory" 2.1 ROMs is because of the presence of DMPortRead.apk app - presumably that creates/maintains the history file.
[SIZE=+1]See the 3rd post of this thread for downloadable patch/script files[/SIZE]
If any of you are consistently experiencing the "undead call" problem, please consider testing the above to see if you think it is the fix. (I believe it is.)
bftb0
I knew I liked you!
I'll have to try this out when I get home.
Here's a flashable .zip and also a shell script which may be used in Gscript lite - you need to unpack the "unpackme.zip" file to get to them. ("unpackme" is NOT flashable).
I realized after I was 95% of the way through putting together the installer script that there was absolutely no reason to do this in an offline fashion (that is, "overflashing" it during a recovery boot) - it is perfectly fine to do what needs to be done in a shell script any time you please with the regular OS is running. Oh well, the ROM devs can look at it and use whatever they want from it (or nothing at all).
You can run the CureUndead_v0.9.sh script either from within the Gscript Lite app (you need to give the script root privilege), or you could use adb to push it to /data/local and chmod it and execute it by hand. Note that Gscript Lite on GingerBread has this annoying bug where it prints "stderr:" for every line in the original script. It's not my script that's doing that - it's either a problem with Gscript Lite, or something unusual about GSB.
Oh, yeah - the way the script is written, you can run it as many times as you want; as a side effect, this will truncate to zero length any prior history file.
MD5's and sizes of contents of "unpackme.zip":
0bf8c49312e61c436d379a24255b12f3 CureUndead_v0.9.sh - 421 bytes
9d459f9f598f51fffa98cf832c524e50 CureUndead_v0.9.zip - 2,678 bytes (this one is flashable)
Going to try it out... Thanks for this!
nice work...
Very interesting... so this is something that would need to be done post flash, what do you think...
... we use that lights.sh script conap put together in /system/xbin/ that runs @ every boot to initialize the lights for trackball/notifications... would it work if I added the lines to that? I'm not sure if it would cause issues running it @ each boot or not?
Trying to figure out a different way to add this pre-build too.
This is huge if it's the fix. Incredible work.
oceanminded said:
This is huge if it's the fix. Incredible work.
Click to expand...
Click to collapse
I think it is the fix
workshed said:
Very interesting... so this is something that would need to be done post flash, what do you think...
... we use that lights.sh script conap put together in /system/xbin/ that runs @ every boot to initialize the lights for trackball/notifications... would it work if I added the lines to that? I'm not sure if it would cause issues running it @ each boot or not?
Trying to figure out a different way to add this pre-build too.
Click to expand...
Click to collapse
Well, I'm putting together a flashable "fix" file that just uses the installer script, so it could be rolled up into a ROM install as well.
The one thing you might want at boot (rather than only at ROM install time) is some kind of zero-ing out of the history file every once in a while, so that it doesn't grow without bound. I only watched it for a short period of time, and it was only 4 lines long; it might not ever grow big, but that seems like the right thing to do.
So I guess I'll wait until one of you genuises makes this "point and click" simple. I don't have a clue how to implement this on my own. Awesome work bftb0 !
Sheesh you're a brain OP. Awesome job!
Sent from my Ginger Tazz using XDA App
Interesting... what's the undead call bug you're talking about? I've been getting this funny bug on long calls where sometimes the phone app just crashes after 15-30mins or so. I get the crash window, and if I force quit, it shows no signal until I reboot the phone. If that's the one, a fix would be really nice. Running KaosFroyo v39 and never flashed a new radio BTW.
I've also seen the same thing on the WiFi signal. I have SSID broadcast turned off, and it takes it's sweet time picking it up on its own, but running WiFi analyzer seems to wake it up.
ufmace said:
Interesting... what's the undead call bug you're talking about? I've been getting this funny bug on long calls where sometimes the phone app just crashes after 15-30mins or so. I get the crash window, and if I force quit, it shows no signal until I reboot the phone. If that's the one, a fix would be really nice. Running KaosFroyo v39 and never flashed a new radio BTW.
I've also seen the same thing on the WiFi signal. I have SSID broadcast turned off, and it takes it's sweet time picking it up on its own, but running WiFi analyzer seems to wake it up.
Click to expand...
Click to collapse
What he is referring to is during a call you get the tones and vibration like the call has been dropped but then you can hear the person on the other end again and the call was never dropped. What you are describing is a new one to me...
CondemnedSoul said:
What he is referring to is during a call you get the tones and vibration like the call has been dropped but then you can hear the person on the other end again and the call was never dropped. What you are describing is a new one to me...
Click to expand...
Click to collapse
Ah yeah, I've had that happen too. I didn't think of it, though, since it wasn't all that annoying to me. I already ran the fix anyways, so I'll see if it helps either problem.
I haven't had the problem for some reason, but I just entered all that in a terminal window on my phone (and wasn't that tedious). Thanks!
Scott586 said:
So I guess I'll wait until one of you genuises makes this "point and click" simple. I don't have a clue how to implement this on my own. Awesome work bftb0 !
Click to expand...
Click to collapse
I put up a script in the 3rd post in this thread which you could use in the Gscript Lite app. You will still need to figure out how to use Gscript Lite, but at least no "adb" or command-prompt typing is needed.
Everybody else - I would appreciate hearing back from you after you try this, especially if you have been experiencing the "undead call" bug frequently. (I've used my phone for calling so little recently I don't think it has happened to me in more than 5 weeks.) The more often it was happening to you in the past, the more valuable your feedback is now.
bftb0
bftb0 said:
I put up a script in the 3rd post in this thread which you could use in the Gscript Lite app. You will still need to figure out how to use Gscript Lite, but at least no "adb" or command-prompt typing is needed.
Everybody else - I would appreciate hearing back from you after you try this, especially if you have been experiencing the "undead call" bug frequently. (I've used my phone for calling so little recently I don't think it has happened to me in more than 5 weeks.) The more often it was happening to you in the past, the more valuable your feedback is now.
bftb0
Click to expand...
Click to collapse
thanks for the script bf, that's all I needed to add it in the rom. I'll be a tester also, as I do experience the bug quite often, but only on long calls which isn't as frequent for me currently. Bravo sir!
P.S. I will be sure to add "# Undead call fix by bftb0" in the rom and OP page
workshed said:
thanks for the script bf, that's all I needed to add it in the rom. I'll be a tester also, as I do experience the bug quite often, but only on long calls which isn't as frequent for me currently. Bravo sir!
P.S. I will be sure to add "# Undead call fix by bftb0" in the rom and OP page
Click to expand...
Click to collapse
dope
this is good news. great job op and workshed if u add it to your gb rom lol
love you both!
flashed it on gsb1.4. i'll let you know how it goes.
:O OMG! That always happens, but I thought I was crazy XD So I'm going to try this.
Sent from my Droid Eris ♥ (running Ginger Tazz v5 [eat your heart out Jobs])
Related
I have started working on an app for Windows Mobile 6 phones w/ GPS to do run/walk/bike tracking like the Nike+. Here is a little Video of the app in action:
http://www.youtube.com/watch?v=bIqKHCb21cg&feature=channel_page
Version 0.6.5 9s attached
- Smartphone detection is in
- Run Form updated to be smartphone happy, view log is next.
Version 0.6.4 is attached
- Calories burnt calc!!!! (put your weight in...lbs for now...kg coming )
Version 0.6.3 is attached
- 1 Mile/KM kills the app bug fixed!
Version 0.6.2 is attached
- I am not dead! I promise
- This is mostly a maintence update. All the tracking code has been pulled from the views and put off in modules (as it should have been from the get go) so I can get a Smartphone version working soon.
Version 0.6.1 is attached
- Audio updates - new sounds for mile/km passed and distance goal hit
- Audio updates - updates to how the power management is dealt with for audio, still not perfect, but better
- Center button (on your direction pad) now turns the display off and on and also it stops the phone from sleeping when you use that display off method. This is great for phones that get a bit wierd on their GPS in unattended mode.
Version 0.6 is attached
- New internal tracking code to improve performance and make new feature additions easier (this was more about me than you )
- First audible notices. Each mile/km and distance goal hit. It is just a tone right now, but I will record and add voiced stuff tonight.
- New Settings tab for audible notices
- Smartphone users can atleast start the app and track a run now! (still no settings or view log...that is coming)
Version 0.5.9 is attached
- Fix the View/Save log bug (I hope)...you might have to delete your Run Log (yeah for Alpha testing!)
- New way to calculate speed that is more accurate for me. This might depend on what GPS chip your phone uses...try both and see which you like more (change in the Settings Screen)
Version 0.5.8 is attached
- AppToDate bug fix
- Start of true metric support
- little bug fixes
Version 0.5.7 is attached
- I think the String->Date bug is fixed, please let me know!
- Added an "Action" menu under the left soft key for start/stop/save (silly non-touch screen phone users!)
Version 0.5.6 is attached
- EMAIL A RUN!
(that is a horrible name for the feature right now....since it just gives you a link to share...)
http://www.trackmyrun.mobi/viewrun.php?run_id=18&auth_code=5qii4mfy
Version 0.5.5 is attached
- Settings screen is up and working
- Goal progress is based on settings now (not just 3.1 all the time)
- All based on miles still, KM is coming soon fear not!
- Few more bug fixes and exception catches
Version 0.5.3 is attached
- GPS unattended mode updates
- Few bug fixes
- Ignore Calories/Pace, those spots are place holders/debugging right now...they will work in a later release
Version 0.5.1 is attached
- GPS stays up in unattended mode now (screen off by time out or hitting the power button)
- Few little bug fixes
Version 0.5 is attached
- KML support is all in now
- Go to view a lot (has to be a new one) and select View in Google Maps
- Change the line in the KML file to be green since that yellow was hard to see
Version 0.4 is attached.
- Fixed a few of the stupid SubString() bugs
- Added Experimental KML support! (start a run, do some stuff, then go to options->experimental->Build KML). It will put test.kml in your devices root folder
- Working on new speed tracking code, it is far more accurate...but not done yet (so ignore that it has like 900 #'s after the decimal point)
- Ignore what it says for calories burnt...that isn't what you think it is
ENJOY!
Version 0.3 is attached.
Looks good! I would definatly use this app!
Looks impressive. The auditory upgrade feature would be cool to add.
There are similar Apps. One in particular is also cool is:
GPS Cycle Computer v2
http://forum.xda-developers.com/showthread.php?t=424423
How would this calculate calories burned if your activity differs?
i.e. Rollerblading vs. Running vs Cycling, etc.
or is it simply based on time and distance to give a general calculation?
Nice looking app, I will definitely be keeping an eye out for this one. Keep up the good work.
Does this track coordinates? Or does it track via something else? Cause then I'm thinking that you need an active data connection for this to work :|
Kraize said:
Does this track coordinates? Or does it track via something else? Cause then I'm thinking that you need an active data connection for this to work :|
Click to expand...
Click to collapse
It tracks coordinates, so no data plan is needed at all for this. Just a working GPS. Now, I plan in the future to have online features for showing your routes on google maps and storing run data online, ect...but that is in the future...
band27 said:
Looks impressive. The auditory upgrade feature would be cool to add.
How would this calculate calories burned if your activity differs?
i.e. Rollerblading vs. Running vs Cycling, etc.
or is it simply based on time and distance to give a general calculation?
Click to expand...
Click to collapse
There are some standard formulats that are based on weight, time of exercise and how vigorous the activity is. For walk, jog, run that is easy (since I now your MPH's). For biking, roller blading, ect that gets tougher.
This is looking awesome. Could really do with an App like this. Keep it up and hope your "about a week" estimate is correct for a first beta.
A question though; I have a Touch HD. Has the interface been written to be able to cope with a WVGA resolution?
dom_mitchell1 said:
This is looking awesome. Could really do with an App like this. Keep it up and hope your "about a week" estimate is correct for a first beta.
A question though; I have a Touch HD. Has the interface been written to be able to cope with a WVGA resolution?
Click to expand...
Click to collapse
I have only tested it on a VGA display (my Touch Diamond). I have played with it in the QVGA emulator and the Square VGA emulator. The layout is far from final (I am not happy with it at all right now), so that is in flux a lot.
Go ahead and try the current version if you like:
http://grebowiec.net/trackmyrun.zip
Please be aware this is a VERY alpha version. There are known bugs that throw exceptions that I don't catch...so be nice
If you do however have any failures or success, please let me know.
gweedo767 said:
Go ahead and try the current version if you like:
http://grebowiec.net/trackmyrun.zip
Please be aware this is a VERY alpha version. There are known bugs that throw exceptions that I don't catch...so be nice
If you do however have any failures or success, please let me know.
Click to expand...
Click to collapse
Thanks a lot! I'll give it a go once I get home and give you some feedback!
AppToDate Support
Could you possibly think about having this AppToDate Support. Since this is in the early stages of development, it would be great to run AppToDate to get the current version. Thanks.
Couldn't wait until I got home so just loaded it up here. Everything seems good until I tried to View Log when it crashes out on me.Unfortunately I don't have NETCFv35.Messages.EN.wm.cab installed installed so cannot view details.
Also +1 for Apptodate support!
dom_mitchell1 said:
Couldn't wait until I got home so just loaded it up here. Everything seems good until I tried to View Log when it crashes out on me.Unfortunately I don't have NETCFv35.Messages.EN.wm.cab installed installed so cannot view details.
Also +1 for Apptodate support!
Click to expand...
Click to collapse
Did you start and then stop a run? The log file isn't created until you do atleast one and I bet it is dying trying to read the log file (which doesn't exist yet for you if you didn't do a start/stop)
I will do some reading on AppToDate in a bit, see what all it takes to integrate it.
gweedo767 said:
I will do some reading on AppToDate in a bit, see what all it takes to integrate it.
Click to expand...
Click to collapse
That would be very much appreciated. It just makes things a lot easier.
gweedo767 said:
Did you start and then stop a run? The log file isn't created until you do atleast one and I bet it is dying trying to read the log file (which doesn't exist yet for you if you didn't do a start/stop)
Click to expand...
Click to collapse
Yeah I had done and paced about abit; notched up 0.003 miles. Stopped the run successfully and then tried to view the log.
I've just jogged home from a friend's house (1.237 miles). This time when I stopped the run it crashed. No error code or anything; just said I had to quit and restart.
Sorry that's probably not much good for bug finding!
dom_mitchell1 said:
Yeah I had done and paced about abit; notched up 0.003 miles. Stopped the run successfully and then tried to view the log.
I've just jogged home from a friend's house (1.237 miles). This time when I stopped the run it crashed. No error code or anything; just said I had to quit and restart.
Sorry that's probably not much good for bug finding!
Click to expand...
Click to collapse
Did it do fine during the whole run though?
gweedo767 said:
Did it do fine during the whole run though?
Click to expand...
Click to collapse
Yeah no problems there. Slight lag on speed changes but I guess that's to be expected/part of the suposed and much debated GPS lag on the HD!
No complaints about performance at all.
I'm really liking the look of the App, certianly looks good so far; will be awesome if/when audio feedback can be given.
Something that would be good is if you could make the data from the logs uploadable to a PC to plot onto a graph (via Excel).
Like I said, great work so far! Loving this, who needs Nike/Apple!
dom_mitchell1 said:
Yeah no problems there. Slight lag on speed changes but I guess that's to be expected/part of the suposed and much debated GPS lag on the HD!
No complaints about performance at all.
I'm really liking the look of the App, certianly looks good so far; will be awesome if/when audio feedback can be given.
Something that would be good is if you could make the data from the logs uploadable to a PC to plot onto a graph (via Excel).
Like I said, great work so far! Loving this, who needs Nike/Apple!
Click to expand...
Click to collapse
The lag might be that I only update the display every 5 seconds (that is for all data). I think I might update the speed in real time (there is a call back function I can attach to for that). I do have plans for graphing/tracking/mapping in the future via an upload to a website feature...but that is a bit down the road I want to get all the stand alone client features working correctly first!
Please let us know when you have completed a final version. this program will be very useful. I know its still in the early stages hopefully you will be able to find the bugs and get them fixed, so we can download complete version.
I don't have data to spare to test things myself until next month, and have a fairly stable PPP setup anyway.
But I figured if someone wants to experiment the following might be worth a shot.
What I've done is attach a zip with 4 sample options files for pppd that attempt to address issues I've seen with pppd. Specifically the crash with memory issues due to compression, and pppd dying when disconnected and needing to be restarted (eg by LeTama's v0.3 wrapper). If you want to try these out I would suggest using them in conjunction with his wrapper as I'm unsure how other versions may work: http://forum.xda-developers.com/showthread.php?t=824413
The 4 versions for testing are as follows:
option1
- Makes the buffer size used for compression as small as possible.
- Tries to make the connection persistant.
option2
- Disables compression.
- Tries to make the connection persistant.
option3
- Makes the buffer size used for compression as small as possible.
option4
- Disables compression.
To use them they will need to be copied to your /etc/ppp/ folder as "options" and you'll need to ensure it's readable.
If you don't know what I mean I suggest you don't bother trying this.
If you do know what you're doing then you can try experimenting with the different options and see if they make things better/worse.
option3 is probably the safest, option4 may be needed if things still crash due to memory issues with option3.
option1 would be the ideal, but I can't guarantee the persist option is possible.
If option1 or option3 prove to improve things and prevent the crash, then the values used could be slowly increased (to a max of 15) to see if crashes start happening again.
Anyway, just something else the more adventurous and tech savvy users out there with PPP issues can try.
Can I copy these over via ADB push while Android is running, or do I need to put them in the Android root folder so they'll get copied into place on reboot?
Well with Option 1 the data connections drops almost instantly, Option 2 is doing without drops for 10 min now, but it is too early to say if it's an improvement over the old options.
Does compression influence the connection speed? Option 2 works as fast as possible on HSDPA... Option 2 dropped after about 15 minutes when downloading from the market, but downloading from the market was much faster than before.
Should we be copying it as "options" with no file extension or "options.smd"?
Probably as options.smd, that's what I did and it seemed to have some effect...
Now testing option3, will mess with it for the rest of the day and see what happens. At first glance, it seems a bit slow, but that's anecdotal at best.
MAsterokki said:
Well with Option 1 the data connections drops almost instantly, Option 2 is doing without drops for 10 min now, but it is too early to say if it's an improvement over the old options.
Does compression influence the connection speed? Option 2 works as fast as possible on HSDPA... Option 2 dropped after about 15 minutes when downloading from the market, but downloading from the market was much faster than before.
Click to expand...
Click to collapse
Seems like I drew my conclusion from Option 1 too early, after a reboot it works great, I have been downloading MDJ newest rom for 10 min now which resulted 20% of 170mb (from multiupload). No drops untill now, definitely a huge improvement over the old options.smd. Thanks alot Hastarin!
question when i get to the ppp file in i see options.smd and a options.smd1 do i just add this new option to it or delete the old ones and replace with this one?
imphoking said:
question when i get to the ppp file in i see options.smd and a options.smd1 do i just add this new option to it or delete the old ones and replace with this one?
Click to expand...
Click to collapse
I would backup your original files first, although the orig options.smd is probably blank anyhow.
Replace the options.smd with the renamed options from hastarin.
Hastarin, do you happen to know the default options when we were using the default "blank" options.smd? Does it use compression etc. Thanks for your efforts!
noellenchris said:
Hastarin, do you happen to know the default options when we were using the default "blank" options.smd? Does it use compression etc. Thanks for your efforts!
Click to expand...
Click to collapse
The wrapper supplies nodetach, debug and something I can't recall atm (should be in IRC logs).
Compression will be used by pppd by default but I couldn't find information on what size buffer it uses by default.
Google pppd man page for more information.
You are right about options.smd being the safest option. Using options file may affect other things that use pppd if there are any.
Sent from my HTC HD2
Option1 seems to be working fine for me right now. I will report more in a few hours while I'm out.
Hey just wanted to say that I am checking out these options also. So far using option1 and I haven't had any data drops or freezes. Haven't been able to test it extensively yet but will over the next few hours.
With option 1 can you make sure you can switch between WiFi and data and back again? And that you can turn mobile data off and on? And perhaps airplane mode and back to be thorough?
Thanks
Sent from my HTC HD2
It seems after some time options.smd gets reset to blank by itself? Anyone noticed?
Sent from my HTC HD2 using XDA App
memin1857 said:
It seems after some time options.smd gets reset to blank by itself? Anyone noticed?
Sent from my HTC HD2 using XDA App
Click to expand...
Click to collapse
I haven't rebooted yet, but mine is still there and not blank. I will try to toggle wifi etc next. Otherwise it's still rolling well, no disconnects yet or hangs.
memin1857 said:
It seems after some time options.smd gets reset to blank by itself? Anyone noticed?
Sent from my HTC HD2 using XDA App
Click to expand...
Click to collapse
I set mine to read only in case this actually happens lol.
noellenchris said:
I haven't rebooted yet, but mine is still there and not blank. I will try to toggle wifi etc next. Otherwise it's still rolling well, no disconnects yet or hangs.
Click to expand...
Click to collapse
Lucky.. I still can't get mine to last longer than 5 seconds.
Ok with option1 I started experiencing some data freeze again. It happened while downloading a large file and then again when I switched to wifi tethering. The freeze actually freezes my entire system and then my phone runs really really slow. It may be the build that I am using so I am going to try an older build that did not seem to have this problem. I will run option1 for a while again and then try the others.
Option 1 is no good - I think the persist option keeps 3g "connected" even though I'm getting timeouts, instead of dropping and reestablishing data connection.
Will test the other options once I upgrade to 0.4 ril wrapper and S4 mdeejay kernel.
EDIT: oh yeah, I noticed though the default options.smd is blank, when pppd is running it creates a options1.smd in /etc/ and it has the words "user dummy" in it?
First off, I cannot take credit for finding this, I was referred to a bug report thread on the Google Android site by XDA user aweaver33, who I thank VERY much for pointing me on the right direction.
So, several of us have had this issue with various custom kernels, where after typically 24-48 hours, the phone would slow to a crawl. If you were to open an app like System Panel, you would see that the CPU load was pegged at 95%+, and speed would be maxed out. You would also see that the process using all the CPU is Android System.
The problem has to do with the file "time_in_state", which literally keeps track of how much time the CPU spends at any given speed in MHz. There is a limit to the size this file is supposed to reach, 256 bytes. Once it exceeds this size, the next time Android tries to access it, it flips out and gets stuck trying, and pegs the CPU. A lot of devs and users blamed SetCPU, and it is true that SetCPU does have an EFFECT on this issue, it does NOT cause it, and indeed the issue can occur whether SetCPU is installed or not.
The issue is brought on by custom kernels that add additional frequency steps for the CPU to choose from, which causes that log file to grow. Which is why older or stock kernels will not cause this. Some ROMS incorporate a workaround so you may not have this issue.
Anyways, the issue is explained better in the link aweaver33 gave me. I will link to the original thread I posted with the conversation we had and the link he gave. I can confirm that, using the info he gave me, the issue has been fixed. I am currently just over 120 hours of uptime with no problems.
Here is the link: http://forum.xda-developers.com/showthread.php?t=1082363&highlight=stock+kernel+gpu+
EDIT: attached the script files for those who want them. You can drop one or the other (NOT BOTH) in /etc/init.d if your rom has this folder already (creating the folder and adding it won't work), or you can download Autostart (root) from the market for free, and drop the file in /data/opt (create the opt folder). This difference between the two is one runs only once at boot, the other runs every five minutes. If you use SetCPU, you need the one that runs every five mins, as every time you open SetCPU it resets permissions on the time_in_state file.
flashable zip? not everyone is comfortable with code and scripts
If I knew how, I would. I wasn't even comfortable with it. But I was so tired of the locking up, I was willing to try anything (after a Nandroid of course). I'm not sure you *could* do this in a flashable zip. I can post the script I'm using. It only runs once after reboot, unlike aweaver's, which runs every five mins (good if you're using SetCPU, as opening SetCPU resets the permissions of the time in state file).
This script should work if dropped into /etc/init.d. *If* your ROM has that folder by default. Mine does not, so I had to download a free app from the market called Autostart which is free and very small. For that app you create a folder in /data/ and drop the script in there.
Sorry guys but I'm no dev so this is the best I can do, maybe someone else can make it flashable?
would it also be fixed by simply deleteing the log file as well rather than setting it to unreadable
It can't be deleted. System instantly replaces it.
bast525 said:
It can't be deleted. System instantly replaces it.
Click to expand...
Click to collapse
:/ i suppose when it is replaced it would be with a fresh one deleting would fix it for 24-48 hours till it got filled again humm i wonder if a script could be auto executed every 12 hours to delete it rather than just make it unreadable.
Do you know if it is a problem in gingerbread as well?
mirrin said:
:/ i suppose when it is replaced it would be with a fresh one deleting would fix it for 24-48 hours till it got filled again humm i wonder if a script could be auto executed every 12 hours to delete it rather than just make it unreadable.
Click to expand...
Click to collapse
I don't think you can delete it. I can't figure out how to.
mirrin said:
Do you know if it is a problem in gingerbread as well?
Click to expand...
Click to collapse
Issue 9733 is still listed as New, so either Google hasn't fixed it in Gingerbread or they just don't bother statusing their bug reports.
Why do you feel the need to delete it? If you are trying to delete it, you are likely using Root Explorer. Why not just use that to change the permissions of the file? Tap and hold, select permissions, and unchecked all permissions except for the top left one. This will stop the bug, but the permissions will be reset after a reboot, or after opening SetCPU.
I imagine that deleting the file might actually cause FC's or may cause the same bug but I dunno since it wont delete.
dyetheskin said:
flashable zip? not everyone is comfortable with code and scripts
Click to expand...
Click to collapse
I've never created a flashable zip before, but I'd be willing to look into it if the demand is really there. The problem I see is that I'd have to make certain assumptions about how everybody's ROMs are configured. It looks like the most portable approach would be to append a line to the end of /bootcomplete.inc.rc. Do people really find it easier to boot into recovery and flash a zip than to add one line to a file themselves? Personally, I'm always hesitant to flash a zip other than a full ROM because I'd be uncertain how it interacts with other changes I've made to my system.
Inc is
not bad
But. 48hours?
Sent overrow from my Optimized Inc using XDA App
I worked a little with pastorbennett in PM's on this issue. First, I flashed his ODIN image for the Continuum Froyo 2.2 ROM (great work, pastorbennett!).
After working with the image, the only issue that I noticed was my home screen/launcher would "respawn" (linux term). Essentially, the launcher would be killed in the background when I was using another app, and when I returned to the launcher, it would have to restart. This was adding about 10-30 seconds of time to launching another app. I mentioned the issue to pastorbennet and he pointed me in the direction of the local.prop file and hard to kill home (HTK home).
FAST FIX INFO: (For those that don't want to read!)
NOTE: I use Auto Memory Manager (AMM) to check the Out Of Memory (OOM) setting for android.process.acore which is where the home launcher resides. The original setting for mine was 2.
1. MUST BE ROOTED! (Obvious with the Froyo 2.2 ROM, but...)
2. Use the terminal app to gain access to the file system.
3. Type the following into the terminal:
a. su -
b. cd /
c. echo ro.HOME_APP_ADJ=0 >> /data/local.prop
(There is a space before and after the >> !)
d. vi /data/local.prop
e. Press VOL-UP I to enter edit mode.
f. Press VOL-UP F to move to the end of the line.
g. Press the <ENTER> key on your keyboard to add the blank line at the end of the file.
f. Press VOL-UP E, then type :wq and press <ENTER>
4. Reboot. This should work from this point on, and remain static through subsequent reboots.
Long Winded Explaination
I did a little google research and found a cache of great information from zepplinrox about this: http://forum.xda-developers.com/showthread.php?t=991276. He essentially has created a script to do all sorts of memory saving/enhancing things.
After reading through the great OP, I decided to manually enact the local.prop file change (adding ro.HOME_APP_ADJ=0 to the file), rather than running his entire script and potentially mucking up my nice clean Froyo system.
Problem number 1. Where is the damn local.prop file. I couldn't find it at /data/local.prop as he said is where it should be located. I googled some more and found this post: http://www.droidforums.net/forum/cyanogenmod/145493-missing-local-prop.html#post1501687, where it says that one must CREATE the local.prop file. Oh, okay, that makes sense...
So, I created the file by echoing ro.HOME_APP_ADJ=0 >> /data/local.prop and I added a blank line at the end of the file. This is required because if the blank line is not there, the ro.HOME_APP_ADJ=0 line is deleted on reboot, for whatever reason.
I used Auto Memory Manager (AMM) to check the setting of the android.process.acore process. It showed OOM Priority=2. Damn! So, I rebooted. SUCCESS! OOM Priority=0!
So far, I have not had an issue with my home screen/launcher respawning on me.
Caio!
Ignore 10char
Hey Moon Shadow. Thanks for figuring this out! I can't take any credit, you did all the busywork on this.
By the way, I love your avatar! Is that a Springfield Armory Loaded in Black Chrome? I'm a huge fan of 1911's!
pastorbennett said:
By the way, I love your avatar! Is that a Springfield Armory Loaded in Black Chrome? I'm a huge fan of 1911's!
Click to expand...
Click to collapse
Um, no. It's my CCW piece. A Taurus PT-1911DT (Duo-tone).
Sent from my rooted Samsung Continuum, running Android 2.2 - Froyo, thanks to imnuts!
Moon Shadow - NM said:
Um, no. It's my CCW piece. A Taurus PT-1911DT (Duo-tone).
Sent from my rooted Samsung Continuum, running Android 2.2 - Froyo, thanks to imnuts!
Click to expand...
Click to collapse
Sweet! I almost bought a Taurus a while back, but ended up getting a Citadel (made by Armscor). With that small pic, it almost does look like a Springfield.
By the way, did you ever post on XDtalk? It's been a while since I've been on there, my user name is lutheranpriest.
pastorbennett said:
Sweet! I almost bought a Taurus a while back, but ended up getting a Citadel (made by Armscor). With that small pic, it almost does look like a Springfield.
By the way, did you ever post on XDtalk? It's been a while since I've been on there, my user name is lutheranpriest.
Click to expand...
Click to collapse
Hehehe... Okay, so we are WAY off topic... Springfields are nice weapons, but I just like the feel of the Taurus... I know, I know... A 1911 is a 1911... Plus, at the "show" it was about $150.00 cheaper than the Springfield.
Nope, never visited the site. My usual site is USACarry.
I agree Taurus different feel that seems more....comfortable...natural idk but it fits my stocky Hupa hands
sent from my XDA phone - its more than a continuum
nodixe said:
Hupa hands
Click to expand...
Click to collapse
Snigger... (If you don't know the reference, go read The Hitchhiker's Guide to the Galaxy... Okay, fine... a snigger is a cross between a snicker and a giggle.)
Sent from my rooted Samsung Continuum, running Android 2.2 - Froyo, thanks to imnuts!
I will release my changes to the franco.kernel in this thread before franco includes them in his kernel for the upcoming releases. So this is a "pre-release" thread for franco.kernel, for the changes I'm making.
v2 (included in [16 SEP] franco.Kernel)
- Speakerphone echo fixed. Works with normal calls, not with Skype (or other voip apps probably). Skype still works like before, echo with speakerphone mode.
The fix can be disabled with
Code:
echo 0 > /sys/module/snd_soc_msm7kv2/parameters/speakerphone_echo_fix
You can post in this thread how it works. It always uses speaker_mono_tx instead of speaker dual mic broadside dev.
- Removed some logging from msm7x30.c (left there by Huawei. They must have a logging fetish or something )
mod_v1 (Included in [11 SEP] franco.Kernel)
- "Use phone's mic with headset"-feature is now user configurable.
By default uses phone's mic with headset/headphones/line-out. So if you want that, no configuration is needed.
To use headset's mic create a file called "10headsetswitch" in "/system/etc/init.d/" and paste the following to it:
"echo 0 > /sys/module/snd_soc_msm7kv2/parameters/headset_mic_switch"
Future plans
- Fix speakerphone echo in Skype. Investigate the volume problems (max. volume is too high, etc..).
Flashing instructions
- Boot to recovery
- install from zip
- choose francokernel_X_ksatta_vX.zip.
Notes for devs
The latest franco.kernel has logcat disabled by default, to enable it put this in .config:
Code:
CONFIG_ANDROID_LOGGER=y
To enable kernel debug messages (can be seen with dmesg):
Code:
git checkout 0c1adc36ed u8800-kernel/kernel/printk.c
NOTE: disable logging again before releasing anything, probably slows down the phone quite a bit when logging is on.
Credits
ksatta - use phone's mic with headset
stockwell - user config for headset mic setting
franciscofranco - the franco.kernel
Thanks
wmi543
genokolar
And everyone else if I forgot to mention someone.
Files
franco.kernel-sep11+ksatta_v2.zip - Zip file to flash phone.
franco.kernel-sep11+ksatta_v2-src.zip - V2 source for devs. msm7x30.c file is from u8800-kernel/sound/soc/msm. Also includes compiling instructions.
To make it set to using the phone mic at boot, save the following script into /system/etc/init.d/. Call it whatever you like just with a two digit number at the start (ie. 10headsetswitch)
Code:
echo 0 > /sys/module/snd_soc_msm7kv2/parameters/headset_mic_switch
As mentioned this is already configurable in Miui using x5 settings so you don't need to worry about making the script yourself but the voice quality might not be very good (will be fixed for the next version) unless you use the kernel attached from ksatta.
Please could explain how to install this kernel? Because I read the file that you have attache and in the end I finish like in the begginign without knowing how to do it.
Is only need to do by the recovery with the zip file ans what about the secund zip file the smaller one?
Sorry but Ian sure that I am not the only o w that is asking this.
Sent from my u8800 using XDA App
vlc_marcos said:
Please could explain how to install this kernel? Because I read the file that you have attache and in the end I finish like in the begginign without knowing how to do it.
Is only need to do by the recovery with the zip file ans what about the secund zip file the smaller one?
Sorry but Ian sure that I am not the only o w that is asking this.
Sent from my u8800 using XDA App
Click to expand...
Click to collapse
Yeah I was a bit unclear, sorry. To flash boot to recovery, install from zip and choose my zip.
edit: Updated first post, flashing instructions
ksatta said:
Yeah I was a bit unclear, sorry. To flash boot to recovery, install from zip and choose my zip.
Click to expand...
Click to collapse
Ok thanks. And for what is the small zip file?
So I will use in this last miui without any problems correct.
Will I get battery problems?
Sent from my u8800 using XDA App
vlc_marcos said:
Ok thanks. And for what is the small zip file?
So I will use in this last miui without any problems correct.
Will I get battery problems?
Sent from my u8800 using XDA App
Click to expand...
Click to collapse
Sigh man, I'm growing tired of your questions everywhere in every thread you can find. This is just my kernel compiled with a different file to make this "Use phone's mic with headset"-feature is now user configurable." avaliable.
No it won't take coffees for you, no it won't explode your device, no it won't turn it into an airplane and fly in circles above your head, and no it won't make you rich beyond imagining.
Sorry for the smallish OT ksatta, it ****s me reading stupid questions everywhere.
Very nice job like I told you before
franciscofranco said:
Sigh man, I'm growing tired of your questions everywhere in every thread you can find. This is just my kernel compiled with a different file to make this "Use phone's mic with headset"-feature is now user configurable." avaliable.
No it won't take coffees for you, no it won't explode your device, no it won't turn it into an airplane and fly in circles above your head, and no it won't make you rich beyond imagining.
Sorry for the smallish OT ksatta, it ****s me reading stupid questions everywhere.
Very nice job like I told you before
Click to expand...
Click to collapse
First of all Ian not from your family so stupidity is not in my genes. Secund if you are tired go to sleep.
I didn't ask to you, so you don't need to react like this. Don't be a small kid.
When I don't know I ask.
So Franco don't give me your ****y opinions when I don't ask for then.
Thanks
Sent from my u8800 using XDA App
franciscofranco said:
No it won't take coffees for you, no it won't explode your device, no it won't turn it into an airplane and fly in circles above your head, and no it won't make you rich beyond imagining.
Click to expand...
Click to collapse
I think it's a fair question, I was wondering why my phone wasn't making me coffee
vlc_marcos said:
Ok thanks. And for what is the small zip file?
So I will use in this last miui without any problems correct.
Will I get battery problems?
Click to expand...
Click to collapse
You can already do this in Miui, have been able to for a while. Flashing this version should make the voice quality better though.
Yeah, like franco said, the v1 is just user-configurability for the headset mic thing.
For anyone else wondering, I will report any changes I make in the first post. So the zips here won't have any other changes compared to franco.kernel, except the ones I report in the first post.
vlc_marcos said:
Ok thanks. And for what is the small zip file?
Click to expand...
Click to collapse
I updated the first post to be less confusing. the smaller file is only the source file, only needed by devs.
franciscofranco said:
Sigh man, I'm growing tired of your questions everywhere in every thread you can find. This is just my kernel compiled with a different file to make this "Use phone's mic with headset"-feature is now user configurable." avaliable.
No it won't take coffees for you, no it won't explode your device, no it won't turn it into an airplane and fly in circles above your head, and no it won't make you rich beyond imagining.
Sorry for the smallish OT ksatta, it ****s me reading stupid questions everywhere.
Very nice job like I told you before
Click to expand...
Click to collapse
Mate, you seriously need to get a grip and settle down. Maybe lay off the espresso a bit. I know you are doing good things with your kernel and everyone appreciates that and is grateful. However, almost every post you make is aggressive and condescending. Ok so you have it all figured out, that's great. But the majority of us are just struggling and muddling along enjoying Android and trying to learn and contribute as we go. When you attack and belittle most posters it just make you look like a wanker.
May I suggest: if you don't wish to assist then simply don't respond. Someone else will or maybe no one will in which case the post will recede into the past and the poster will look elsewhere.
Maybe you, or anybody here can write me pm with very short info how to compile kernel [what parrameters should pass to it] and make zip package to be installable to phone? Once i tried to compile but image was 2x times bigger than original realese so i was afraid to test it
GolfCranK said:
Mate, you seriously need to get a grip and settle down. Maybe lay off the espresso a bit....
Click to expand...
Click to collapse
it's PASSION man! Who wants to read nice post i want to read **** words man!
Tommixoft said:
Maybe you, or anybody here can write me pm with very short info how to compile kernel [what parrameters should pass to it] and make zip package to be installable to phone? Once i tried to compile but image was 2x times bigger than original realese so i was afraid to test it
Click to expand...
Click to collapse
Maybe you were looking at the uncompressed Image file? zImage is the correct file. But anyway the -src.zip contains compiling instructions, I created them today with a fresh install of Ubuntu 11.04. If you test my instructions and have any problems, inform me and I'll update the instructions.
Before you edited you asked about what v1 does, there's a whole lot of text in the first post, but yes, it only makes the headset mic switch user-configurable Future releases might have more changes
Actually my version uses phone's mic by default. I made it default because franco.kernel has been using phone's mic by default. So, to avoid confusion:
If you want to use headset's mic use "echo 0 > /sys/module/snd_soc_msm7kv2/parameters/headset_mic_switch" in the script.
If you want to use phone's mic, don't do anything
edit: This applies to the v1 kernel in this thread, miui uses headset's mic by default. Reason above.
Man, this kernel fixed the only issue I had with Oxygen, and call quality is even great! Now I won't change ROMS ever in the next months (unless Huawei releases official Gingerbread). I'm not gay but this is true, I LOVE YOU!!!!
ksatta said:
Maybe you were looking at the uncompressed Image file? zImage is the correct file. But anyway the -src.zip contains compiling instructions, I created them today with a fresh install of Ubuntu 11.04. If you test my instructions and have any problems, inform me and I'll update the instructions.
Before you edited you asked about what v1 does, there's a whole lot of text in the first post, but yes, it only makes the headset mic switch user-configurable Future releases might have more changes
Click to expand...
Click to collapse
MAN! Thanks! finally someone wrote how to properly compile. THANKS!! You're awesome
ksatta said:
Actually my version uses phone's mic by default. I made it default because franco.kernel has been using phone's mic by default. So, to avoid confusion:
If you want to use headset's mic use "echo 0 > /sys/module/snd_soc_msm7kv2/parameters/headset_mic_switch" in the script.
If you want to use phone's mic, don't do anything
edit: This applies to the v1 kernel in this thread, miui uses headset's mic by default. Reason above.
Click to expand...
Click to collapse
lol sorry I edited it now.
My theory about the speakerphone echo is that the audiolibs in 2.3 roms use the wrong routing. They're probably now using the same microphone dev. id. as normal mode, when they should be using the "speakerphone mic" dev.id.
I wasn't able to confirm this yet, didn't get my debug messages out of the kernel yet Normal logcat works, but the kernel debug messages don't show up in it. Also I couldn't find a syslog file.
But I'll continue another day.
Ksatta i see you good with freaking linux stuff and sound So can you make that recording audio and video - audio quality to be good not some arm ****?
I found that codec is here arch/arm/mach-msm/qdsp5v2/audio_amrnb.c How to make that system uses different codec or this but with better sample rate ant bit rate, i can change this in file but i can't find the specification of this codec so maybe it's not supporting 44.1Khz sample rate or even 16Khz.
Thanks ksatta for this ! Was exactly what needed. Btw instead of setting that init script couldn't just change the value from 1 to 0 or it is restored after every reboot?