Having problem ? Look here first - Tilt, TyTN II, MDA Vario III Android Development

This was the kernel thread but it is so full of question that it was renamed to Question and answer!
before ask search in the forum.

Guide to install:
http://sourceforge.net/apps/trac/androidhtc/wiki/HowToInstallWithAtoolsNand (Flash the phone)
http://sourceforge.net/apps/trac/androidhtc/wiki/HowToInstallWithAtoolsHaret (Dual system windows/android)
If you have "install module error" please install the android update on sourceforge. Read more here:
http://forum.xda-developers.com/showthread.php?t=848921

Awesome job on this l1q1d, i finally got around to getting the git set up on my computer yesterday so in can modify and compile so i'll try and get coding when i have some free time Thanks for all your efforts.

I have some memory issues with both 3-10-2010 and 4-10-2010 kernels. The memory usage is really high and my launcher(launcher pro) keeps getting closed/restarted all the time even without opening any other apps.

Here for testing...
Glad to see this thread started!! Thought dev for Kaiser had seen its end. I'm no coder but can help with testing.

Hey L1q1d, this isn't by any means vital but i find it annoying and don't know if any other kaiser users have found this. If i turn the phone on and don't unlock it before pressing the power button again (i.e. just to check the time), there is a relatively long delay before the screen turns off. If i unlock the phone and then press the power button it turns off instantly. I have attached the logcat from when the phone is turned on and then turned off, i have also indicated where it locks before turning off the screen. I'm looking into it but if you have any pointers or don't experience this with your device let me know please

-Arturo- said:
I have some memory issues with both 3-10-2010 and 4-10-2010 kernels. The memory usage is really high and my launcher(launcher pro) keeps getting closed/restarted all the time even without opening any other apps.
Click to expand...
Click to collapse
Ok scratch that looks like the problem has been caused by having data on ext2 partition.

The kernel 2.6.32 runs way better than previous, but i have a persistent fail that knocks out the screen, at start i can see a message saying "msm_i2c.0: Bus still busy, status 2100m intf 100" and another more saying "msm_i2c.0: Error waiting for notbusy". ¿It is a common fail or it's only mine?

Hi
the problem is I do not belong here
I tried several variants android
the Caller ID does not work
basic configuration of network settings, but it is not good
if you want to set up an error message is incorrect sim, and it is no longer a network
something that is not a solution?

L1q1d, good work. Some of the changes you have made, such as nand, affect all of the related phone types. So, you might want to at least mention them on the vogue kernel thread. On the other hand, the keypad and battery code is not used by vogue. As you know, Polaris uses the same battery code as Kaiser.
I'm thinking two changes for battery code:
a) going back to max voltage and current instead of average, to work better with poor batteries. My old battery sometimes has deep dips in its reported voltage, causing a recalibration to 5% capacity when it really has more like 40%.
b) the recommended capacity calculations at high and low calibration points should be "recommended = battery_capacity - (new - old)" instead of "recommended -= (new - old)". As things are, the recommended value is pretty close on the first calibration, but any subsequent calibrations apply the same correction over and over again, making the recommended value go negative or insanely positive. Of course I cannot remember the names of the variables.

@L1q1d
This is a nice idea to make this thread for kaiser users.
Today I tried the latest kernel 4-10-2010 with fresh froyo 2.2.1 (nand installation). First the system works well. But after installing the ADW.Launcher from the market and after a reboot I got always chrashes from this launcher and I never had this before with any other kernel and the launcher version has not been changed. So maybe I have the same issues then Arturo. Then I tried the app task killer but it chrashes after starting it (same problem). I think these problems could be memory issues in the latest kernel version.
Keep going on your nice work for kaiser

l1q1d I have just got a framework exception and as usual 90% of apps don't work anymore. It occured using the latest kernel.
Also I still keep getting those launcher pro redraws It didn't happen while using the 2.6.25 kernel. Has the memory management been changed in the new kernel?

Do you use compcache? Like wlan, compcache uses kernel drivers that have to match the kernel version. I use compcache with backing store on 4th partition of sdcard.
Sent from my Full Android on Vogue using XDA App

n2rjt said:
Do you use compcache? Like wlan, compcache uses kernel drivers that have to match the kernel version. I use compcache with backing store on 4th partition of sdcard.
Sent from my Full Android on Vogue using XDA App
Click to expand...
Click to collapse
Yes I do. I ripped the compcache.sh file from latest dzo's fresh froyo build.(I remember reading Kalt Kaffe's post about getting compcache to work with the newest kernel a while ago so I assumed that it has been sorted out and we can enable compcache with new kernel) I'm on NAND at the moment with both system and data. I've tried system on nand and data on ext2 partition but the launcher redraws were killing me, every time I opened opera mini and then closed it the launcher was closed and I had to wait for it to load into memory again.
I'm back to system and data on nand at the moment with new kernel and it's much much better but still it happens from time to time. I've never experienced launcher redraws with the old kernel so I don't really now what;s wrong.
About the 4th partition....you mean swap, right?
When I was on nand +sd card I had 3 partitions 1) fat 32 then 2) ext2 about 30 mb(I don't know what for is the first ext2 partition but i remember that i couldn't install data to sd card with only one ext2 partition) and finally 3) second ext2 partition for data about 300mb. So by creating the third ext2 partition I would activate swap in compcache? I've never tried as I heard that it might used up the sd card faster. also I only have two sd cards 6gb(class 4) and 12 GB (class 2) so I think i would probably need class 6 for swap file?

The compcache-required modules are included in the 2.6.32 modules attached to my first post of this thread. Those files should work with any recent 2.6.32 kernel. I would suggest that we should be able to get modules the same place we get zImage and NBH files.
I wouldn't recommend backing store for everybody. It works for me, with my 8GB card, but I'm not sure it ever even writes anything to the swap partition. And, yes, my fourth partition is a swap partition. Kallt-kaffe's latest compcache.sh script should work fine.
An easy way to find out of your compcache is working: use the "free" command from the command prompt. If swap is shown as zero, compcache is not working. You can also see failures in the dmesg log.

n2rjt said:
The compcache-required modules are included in the 2.6.32 modules attached to my first post of this thread. Those files should work with any recent 2.6.32 kernel. I would suggest that we should be able to get modules the same place we get zImage and NBH files.
I wouldn't recommend backing store for everybody. It works for me, with my 8GB card, but I'm not sure it ever even writes anything to the swap partition. And, yes, my fourth partition is a swap partition. Kallt-kaffe's latest compcache.sh script should work fine.
An easy way to find out of your compcache is working: use the "free" command from the command prompt. If swap is shown as zero, compcache is not working. You can also see failures in the dmesg log.
Click to expand...
Click to collapse
Excellent N2rjt i think you just found the cause of my issues. I updated my system with the modules you have linked enabled compcache again and then i entered the "FREE" command and swap shows zero. So the compcache is not working this must be the reason for constant launcher redraws. Now what could be the cause of "broken" compcache?
Sent from my Full Android on Vogue using XDA App

lzo modules are now included in the kernel, you need only ramswap. probably compcache script have some problem with it.

Ok, guys I got a compcache.sh file from the latest dzo's froyo and compcache is finally enabled. I will be testing the device to see whether the issues are gone. Thanks for your help.

Bug: white screen, Android still alive
How I got a white screen:
AT&T Tilt-flavored Kaiser, latest kernel and dzo's Fresh Froyo, both built from current git code.
I was typing on the hardware keyboard, actually entering a message for xda-developers. I wanted to say "dmesg | grep ds2746", but couldn't find the "|" symbol. I remembered that the hardware keys for the soft keys (between R-T and between I-O) have some symbols mapped to them, so I was trying different Fn- and Symbol combinations of those keys.
Eventually I hit Fn-(Left soft key), and got a text screen with dmesg logs.
Okay, how to get back to a graphical screen? I tried a few keys that didn't take me back, then had a brilliant idea, hit the red hangup key.
That blanked the screen, but when I hit other keys to wake up, I had a white screen. Yet, adb logcat verifies that the phone is still running Android, and it is even responding to my touches, just I can't see anything except white.
Edit: can recover by using Fn- keypad right soft key.

Battery issues?
If anyone has battery issues, please open a terminal, and type this:
> dmesg | grep ds2746 > /sdcard/dmesg.log
and send the dmesg.log file.
Thanks!

Related

[UTIL][DISCONT'D] CFLagFix 1.90 (ext2+ext3+resize+uninst support)

THIS TOOL HAS BEEN DISCONTINUED. IF YOU REALLY NEED A LAGFIX, USE VOODOO. HOWEVER, WITH LATEST ROMS I DONT PERSONALLY FEEL A LAGFIX IS STILL NEEDED, THUS I DON'T USE ONE, AND WILL NOT CONTINUE DEVELOPING ONE
About
Here it is, yet another LagFix tool. It's certainly not the first, but it does offer some things others do not (at the time of this writing).
This patch uses the ext2/ext3 image in /data method.
IMPORTANT NOTICE FOR FROYO USERS
(1) Use ext2. ext3 is NOT supported on Froyo, only Eclair
(2) The installation will fail if you apps installed to SD. Go to Settings -> Applications -> Manage -> On SD card. Click each app and click "Move to phone". In the end, the "On SD card" list should be empty. Reboot. Install CFLagFix. When the fix is installed, you can move apps back to the SD card if you wish.
Features
- Lots of checks to make sure the fix is possible
- This is not just based on a script, but a lot of commands are performed and their results rigorously checked to be what is expected
- You can select (from a set of presets) which folders you want to lagfix
- You can select how big the image should be (between 128mb and all the free space in /data minus 250mb, to prevent low storage space warnings)
- The actual moving of data from RFS to the image is done in a boot loop, while the files are not in use. This minimizes the chance of corruption during move (settings being lost, etc)
- Comes with e2fsprogs, and e2fsck is performed each boot to fix a corrupted image
- Comes with it's own busybox, so no need to install it, and no chance for conflicts
- If an ext2 image is used, it is tuned to not reserve any blocks
- If an ext3 image is used, it is tuned to not reserve any blocks and use journalling
- Also moves databases (safely)
- Uninstall option
- Resize option, resize your partition whenever you want, to whatever (possible) size you want
- "Full automatic" option, this will max out the image size while still preventing the low storage space warning, and will also reclaim the space from the backup folders and automatically resize the image to max again after that space is reclaimed. This generally results in an image of about 1.5 GB. It'll also leave some space in case the system still needs to write in /data but not in the image.
- Progress monitor ("educated guess" about progress, not exact, but pretty close, usually!)
A fair number of these seem to be unique at the time of this writing.
Notes
- e2fsck result is stored in /data/cflf/e2fsck_result.txt
- list of mounted directories is stored in /data/cflf/mountlist.txt
- if ext3 is used /data/cflf/imageisext3 file will be present
- my own test rom is JM2+root-with-update.zip+ClockworkMod
Known issues
- In case the image is heavily corrupted, e2fsck may take longer to fix it than the rest of the boot process. Theoretically this could result in data loss
- ext3 does not seem to be supported on Froyo ROMs JP1/JP2/JP3
Credits
- mimocan, ykk_five, RyanZA, and all others who have chipped in for various lagfixes
- cynogen, e2fsprogs built for ARM
- kalpik, busybox APK
- ofcourse the original authors of those tools as well
- myself, this is all based on ADB Magic code
Donations
Please feel free to donate: http://www.jongma.org/dx.php
Requirements
- Windows
- Microsoft .Net 3.5 framework
- Phone in USB debugging mode
- SuperUser
Before using ...
I strongly recommend using ClockWorkMod and making a backup of your ROM. Just in case Also, during any operation, I advise having your phone hooked up so I can draw power from the computer.
Usage
- Unzip the attached file somewhere
- Make sure your phone is connected in USB debugging mode
- Make sure you have SuperUser installed
- Run CFLagFix.exe
There are three tabs:
Install LagFix
This tab allows you to install the LagFix, and lets you configure some options.
I recommand leaving the "Full automatic" option turned on, if you do, just press "Install !" and everything will be arranged for you. If you turn this option off, you can configure some settings manually, but note that using this does not reclaim wasted space of the backup files.
Note that you can still select to use ext3 instead of ext2, even if in "Full automatic" mode.
When you press "Install !", the program will be finished quickly, but your phone may continue working for 30 minutes or so, and keep rebooting very often. If you have a lot of data installed, it may take even longer.
Do NOT even touch your phone until Android boots up again!
A lot of things are checked before the install will start. You will need about 50% free in /data for the operation to work, but it will check this before making any modifications on your phone.
Resize Partition
This tab allows you to change the current ext2/ext3 partition size. The slider will only let you select values that are actually possible, i.e., bigger than your current data usage and smaller than the total space that could be occupied by the image.
Clicking "Resize !" will reboot your phone and resize the partition. Again, this can take an awfully long time! Don't panic, just wait it out.
Uninstall LagFix
This will uninstall the LagFix. It will completely remove it. Before removing it, however, it will move all files out of the image and back into the normal filesystem again, so no data is lost.
Clicking "Uninstall !" will reboot your phone and perform the uninstallation. Again, this can take an awfully long time! Don't panic, just wait it out.
Note that uninstallation will only work if you are using less than 50% of the device's capacity, but again the program will check this before making any modifications on your phone.
You can only uninstall installations of CFLagFix 1.20 and newer !!
BETA
This is very beta, use at your own risk!
WARNING
This patch is NOT compatible with ANY other lagfix tools. Either undo those completely, or just don't use this. If you were using one of those, I'd personally recommend a complete reflash of the firmware before using this patch.
WARNING #2
Before trying 1.80, please see this post.
Download
<< 1.70: 632
Changelogs
1.80, 15-08-10
- Redone some crucial parts of the patching procedure (for all install, resize and uninstall). Should fix all remaining issues!
1.70, 13-08-10
- Added /data/app-private/ folder
- Added progress monitor (estimates.... not exact)
- Moved /dbdata/databases to it's own partition, much faster for smaller read/writes
1.60, 12-08-10
- Updated codebase to ADB Magic 0.9, fixes issues with some weird pre-existing installations of busybox
1.50, 12-08-10
- Added "full auto" mode, "one click" solution for beginners
- Added ext3 support
- Added resize support
- Added uninstall support
- Fixed some issues
- Update scripts
1.20, 11-08-10
- Everything has been moved to /data/cflf/ , this - amongst other things - fixes issues with JP3
1.01, 11-08-10
- Adusted a permission error which could cause the system to be unable to create any new databases
Fix for 1.00 users: there isn't any yet. This is *beep* to fix manually. I would advise this "unpatch" method posted here: http://forum.xda-developers.com/showpost.php?p=7616676&postcount=29, then repatch with the latest version.
CFLagFix.exe doesn't even run for me.
"The application failed to initialize properly (0xc0000135). Click OK to termiate the application."
lyno said:
CFLagFix.exe doesn't even run for me.
"The application failed to initialize properly (0xc0000135). Click OK to termiate the application."
Click to expand...
Click to collapse
You sure you have MS .Net 3.5 framework installed ?
http://www.microsoft.com/downloads/...fd-ae52-4e35-b531-508d977d32a6&displaylang=en
The error message is a DLL initialization error... as CFLagFix doesn't explicitly use any DLLs, my guess would be the .Net framework.
Chainfire said:
You sure you have MS .Net 3.5 framework installed ?
http://www.microsoft.com/downloads/...fd-ae52-4e35-b531-508d977d32a6&displaylang=en
The error message is a DLL initialization error... as CFLagFix doesn't explicitly use any DLLs, my guess would be the .Net framework.
Click to expand...
Click to collapse
Ah yes! I removed all .net frameworks on this works laptop to be able to install some old COM files. Will re-install and test.
This looks so awesome! Thank you!
Any chance for open sourcing this?
installing now
Well im gonna give this a shot, have just installed the african jg8 and rooted,am doing this fix now.
Then ill try the 1.2 overclock on top, ill post a score shortly .
Not bad though i see one problem... it's windows only ^^
select which folders you want to lagfix
Click to expand...
Click to collapse
Sorry, bit of a noob here - what exactly do you mean by this? Why would we only want to 'lagfix' certain folders and not the whole thing?
just tried out your tool on my stock DXJF4 (with apps in it, not clean condition). With default size as well (around 1200 mb)
Actually I used mimocan's fix before but everything was wiped by mistake and everything went to default condition.
After the process finished, the Android displayed information about damaged internal SD, but everything was working. Is that expectable?
Now I got 2260 using Quadrant, leap from 1700 with mimocan's fix.
Nice job Chainfire!!
Can't wait to use JM2 / DDJG4
btw, can I post this on my blog?
:update :
whenever I open gallery, it always says no sdcard detected... do you know how to fix this? -> it doesn't recognize both my internal & external sd, but i can browse them properly in Estrongs/astro
veenone said:
After the process finished, the Android displayed information about damaged internal SD, but everything was working.?
Click to expand...
Click to collapse
That sounds scary, think I'll wait a while before trying!
RyanZA said:
This looks so awesome! Thank you!
Any chance for open sourcing this?
Click to expand...
Click to collapse
Not at the moment, but maybe in the future
Tayutama said:
Not bad though i see one problem... it's windows only ^^
Click to expand...
Click to collapse
Can't be helped. Not going to release a non-Windows versions. Perhaps wine/mono will make it work, though I doubt it
danamoult said:
Sorry, bit of a noob here - what exactly do you mean by this? Why would we only want to 'lagfix' certain folders and not the whole thing?
Click to expand...
Click to collapse
You can't really lagfix all folders, as the process where the image is mounted is run asynchronously with the rest of the boot process. There will be havoc if the system can't load certain files because the image is not mounted yet. This is why you can't just lagfix the entire system, but only certain parts.
In the presets I have only added those folders that I feel are mostly safe to lagfix AND would actually benefit the speed of the phone.
Also, for some folders there is some discussion to whether or not it is beneficial to have them in the image, like /dbdata/databases. I personally feel it should be lagfixed, but not everyone agrees.
veenone said:
just tried out your tool on my stock DXJF4 (with apps in it, not clean condition). With default size as well (around 1200 mb)
Actually I used mimocan's fix before but everything was wiped by mistake and everything went to default condition.
After the process finished, the Android displayed information about damaged internal SD, but everything was working. Is that expectable?
Now I got 2260 using Quadrant, leap from 1700 with mimocan's fix.
Nice job Chainfire!!
Can't wait to use JM2 / DDJG4
btw, can I post this on my blog?
Click to expand...
Click to collapse
I have not seen the "damaged internal SD" message before in any of my tests. It might be ROM specific (I'm personally using JM2). I would recommend rebooting (using the "hold power button + press power off" method) and see if the message still comes up. Let me know what happens.
And yes, feel free to post about it in your blog.
veenone said:
just tried out your tool on my stock DXJF4 (with apps in it, not clean condition). With default size as well (around 1200 mb)
Actually I used mimocan's fix before but everything was wiped by mistake and everything went to default condition.
After the process finished, the Android displayed information about damaged internal SD, but everything was working. Is that expectable?
Now I got 2260 using Quadrant, leap from 1700 with mimocan's fix.
Nice job Chainfire!!
Can't wait to use JM2 / DDJG4
btw, can I post this on my blog?
:update :
whenever I open gallery, it always says no sdcard detected... do you know how to fix this?
Click to expand...
Click to collapse
Replying to the same message again, hehe.
Now that I'm thinking about, how exactly did your device got wiped ? Anything less than an actual firmware flash does not completely remove mimocan's fix, AFAIK. To completely undo it you'd have to completely reflash (and get stock kernel back), and possibly remove the ext partition from your SD. In other words, if you "wiped" from recovery, this is not a removal of mimocan (AFAIK).
Gallery is working fine for me, by the way, and as stated above, I have not seen that message in my tests with JM2 (neither with a lot of apps installed nor a clean flash).
(Then again, this is the first release, so there might be issues )
Is it possible to do this onto an external SD card (provided one has one that is fast enough) so we do not risk any possible further damage to the internal card due to excessive IO.
I believe it would be quite difficult to replace the internal SD card, and in order to load custom roms (with update.zip) it must be mounted to the internal SD.
I'd much rather replace external SD cards if I had to choose between the internal and an external.
well everything was restored to factory state when I went to CSC menu. I think mimocan's fix also removed since I got 800 in quadrant score.
Update: after I rebooted the sgs for a couple times, now it recognize both sd cards.. weird.. But that's fine since the issue is solved now!
Daemos said:
Is it possible to do this onto an external SD card (provided one has one that is fast enough) so we do not risk any possible further damage to the internal card due to excessive IO.
I believe it would be quite difficult to replace the internal SD card, and in order to load custom roms (with update.zip) it must be mounted to the internal SD.
I'd much rather replace external SD cards if I had to choose between the internal and an external.
Click to expand...
Click to collapse
This fix is using exactly same space that is already reserved for user data and programs. And it is on the internal SD. So I really can't think how this fix could cause any damage at all. Thoughts?
I selected maximum Space, and now i have low internal memory. How to remove this fix or change the Space?
Daemos said:
Is it possible to do this onto an external SD card (provided one has one that is fast enough) so we do not risk any possible further damage to the internal card due to excessive IO.
I believe it would be quite difficult to replace the internal SD card, and in order to load custom roms (with update.zip) it must be mounted to the internal SD.
I'd much rather replace external SD cards if I had to choose between the internal and an external.
Click to expand...
Click to collapse
Use mimocan's fix if you want to use external SD - it is especially made for that! His thread is a sticky (at the top) in this forum.
veenone said:
well everything was restored to factory state when I went to CSC menu. I think mimocan's fix also removed since I got 800 in quadrant score.
Update: after I rebooted the sgs for a couple times, now it recognize both sd cards.. weird.. But that's fine since the issue is solved now!
Click to expand...
Click to collapse
Mimocan's fix uses Odin. Like update.zip's, a "factory reset" does not remove patches made in this way, only a real flash does.
Either way, happy to see your problem is solved
I think the problem was the system didn't mount sd cards properly after several boots from CFLagFix. So it needs more reboots to mount the sdcard with structure change properly...
Chainfire said:
Not at the moment, but maybe in the future
Can't be helped. Not going to release a non-Windows versions. Perhaps wine/mono will make it work, though I doubt it
Click to expand...
Click to collapse
It's a shame you can't open source this.
Personally, there is no way I'm going to run something like this without source - I believe you are just trying to help us out, but there is always the chance that you could be doing something damaging by mistake, or even installing a trojan on purpose.
I'll be following release though, looks awesome and hopefully you'll be able to open source this soon!

[UTIL][OUTDATED] One Click Lag Fix 2.0

[size=+2]This version is now deprecated in favor of the 2.0 APK version. Please see this link: http://forum.xda-developers.com/showthread.php?t=784691[/size]
This version is not recommended for use any longer.
Details about what this fix does:
Creates a VIRTUAL EXT2 filesystem inside the stock RFS filesystem on the internal SD card, with a 4KB block size. This means that this lag fix creates a buffer between the real filesystem and the android system. This buffer should reduce the amount of disk I/O required for all operations by utilizing EXT2 buffering, as well as not writing file access times to disk, etc.
Folders that are currently supported:
/data/data
/data/system
/data/dalvik-cache
/data/app
/data/app-private as a symlink to /data/app/app-private
/dbdata/databases is not supported. It appears to be ROM backed, and can cause problems if overwritten.
Benefits over version 1
1.5GB of application data available, with no data loss.
e2fsck of the EXT2 partition on each boot.
Correct busybox version included! YES!
/app and /app-private directory included in the fix for faster application installs.
/dbdata/databases included in the fix, expected to give a big performance boost for apps that use it.
Mounts instead of symlinks for extra performance as OS does less work (about 100 or so more quadrant).
Benefits over other lag fixes
Open source, with full comments and ease of editing.
Works on any and all firmware versions, including any yet unreleased froyo versions (that don't change file structure).
Credits
Big thanks to mimocan for putting us all on the right track in how to sort out lag problems!
Big thanks to ykk_five for showing us all how well loopback filesystem mounting works!
Big thanks to cyanogen mod for e2fsck
Requirements for One Click Lag Fix 2.0
Rooted phone - http://www.addictivetips.com/mobile...t-samsung-galaxy-s-i9000-with-a-single-click/
Windows computer with SGS Drivers (Samsung Kies), or the ability to read through the batch file and run it yourself.
(Beta Release) The ability to reflash your device if something goes wrong.
No other lag fix installed. If you installed One Click Lag Fix 1.0, then use the uninstall function which came with that lag fix before running this lag fix. (Untested but assumed to be working, please help out here.)
1.5GB of freespace on Internal SD Card for swap files while the fix is working (/sdcard).
"Internal phone storage" in Settings->SD Card must read greater than 500mb (0.5GB) of free space.
How to run One Click Lag Fix 2.0
Place your phone into USB debugging mode: Settings->Applications->Development
Attach your device to your computer. Do not mount the drives.
Download the attached ZIP file.
Unzip to a folder of your choice.
Double click "lagfixme.bat".
Don't double click "unlagfixme.bat".
Wait for it to complete.
You will need your phone to be unlocked when it runs the script, so that you can accept the permissions request that will appear on your device.
How to remove One Click Lag Fix 2.0
Double click "unlagfixme.bat"
Wait for it to complete.
Known Issues For All Versions
Some custom firmwares use up all available space in /system. This fix requires some libraries to be placed in /system/lib. These libraries are used to create the filesystem properly, and to check it for errors on every boot.
If your firmware does not have the available space (around 1mb) in /system, do not use this fix! Your phone will not boot and will have to be restored from backup / reflashed.
Current known firmwares with this issue: None yet. Please provide the firmware version+mods if you encounter this issue. It will show up as an out of space error in the log, under 'Copying libraries'.
Known Issues 2-1, 2-2
Paid apps from the market have issues.
Google maps and other pre-installed ROM-backed applications have issues.
2-3 Changes from 2-2
/dbdata has been removed. This fixes maps issues.
/app-private is now a symlink to /app/app-private. This fixes paid apps issues.
Alternate installation methods for similar fixes
Tayutama has made an update.zip version that is easy to install - http://forum.xda-developers.com/showpost.php?p=7632258&postcount=208
Chainfire has a .NET version of this fix with some nice features - http://forum.xda-developers.com/showthread.php?t=751513
Frequently Asked Questions
Q: My apps are force closing while this fix is running, and I can't use my phone!
A: By design. The script has backed up/copied your apps over to the internal SD card (remember the requirement about 1.5GB of free space on the SD card?). It is now overwriting them with a 1.5GB file. As the file overwrites an app that is trying to do something, it will probably force close. This is normal.
Closing all running apps, and removing widgets before running this fix can make the process much smoother, though.
Q: The script can't transfer files to my phone / The script can't run / Help help I'm dieing!
A: Read the first post again.
Q: My paid apps from the market don't show up.
A: I will hopefully have a fix for this sooner or later. Hold tight! It's in the known issues. I don't have access to paid apps, so I can't test this.
Q: Does this need busybox?
A: No, busybox is included.
Q: I only have 200mb of free space now! What gives?
A: The lag fix has made a 1.5GB file, and is storing all of the data inside there. The side effect is that the free space meter is now incorrect. Sorry, this can't be helped.
You can check real free space by using ADB like this:
Code:
adb shell
su
busybox df -h
Q: When I use a backup tool, the backup is now 1.5GB big! It's taking forever!
A: The backup tool isn't designed to work with this fix. It will work, it just won't work well. Hopefully this fix will be short lived, and either Samsung will give us a new update, or someone will give us a good custom firmware that can natively mount what we need, where we need it. Or someone might come out with a better backup manager. Until then, we suffer.
Q: Will a reflash wipe this fix?
A: Yes, a reflash will wipe everything this fix did.
Q: Can this brick my phone?
A: If you know how to get to the download mode from power off (hint: volumedown+home+power), then almost nothing short of throwing your phone off a tall building can actually brick it. If you can't do this though, or don't know someone who can, then you're better off waiting for samsung to release a fix. Anything that moves files around on your device has the potential to break things, and this fix has no QA department.
Q: Why is /dbdata not included in your fix, but other people have included it?
A: Other people have included it in the same way my 2-2 fix includes it. However, /dbdata is ROM backed. This means that the real files are on ROM, and only the changes appear in the /dbdata folder. When copying or moving files from this folder, you would need to specify each folder by exact name to ensure that it was copied across, and each firmware can have their own names. (This is because RFS wildcard will not catch an unused ROM backed file.) In some cases, you can get lucky and have this work perfectly because you have already used all the files in /dbdata. There is no fail safe method to do this though, and /dbdata does not make a big difference to performance. (It is already on NAND flash.) If you want to try your luck, v2-2 is still available.
Q: Why does this lag fix work? Is it slowly destroying my phone?
A: Let's say an application counts from 1 to 10, and writes the value each time to disk.
Stock:
1 -> App tells RFS to write 1 to disk -> RFS writes 1 to disk -> RFS writes journal saying to changed the value on the disk.
2 -> App tells RFS to write 2 to disk -> RFS writes 2 to disk -> RFS writes journal saying to changed the value on the disk.
..
9 -> App tells RFS to write 9 to disk -> RFS writes 9 to disk -> RFS writes journal saying to changed the value on the disk.
10 -> App tells RFS to write 10 to disk -> RFS writes 10 to disk -> RFS writes journal saying it changed the value on the disk.
Total physical disk writes: 20. Speed: SLOW! Wear and tear on disk: HIGH!
Lag Fix:
1 -> App tells EXT2 to write 1 to disk -> EXT2 stores 1 in RAM.
2 -> App tells EXT2 to write 2 to disk -> EXT2 stores 2 in RAM.
..
9 -> App tells EXT2 to write 9 to disk -> EXT2 stores 9 in RAM.
10 -> App tells EXT2 to write 10 to disk -> EXT2 stores 10 in RAM.
..
EXT2 tells RFS to write 10 to disk -> RFS writes 10 to disk -> RFS writes journal saying it changed the value on the disk.
Total physical disk writes: 2. Speed: FAST! Wear and tear on disk: LOW!
This isn't exactly what is happening, but it gives you the general idea.
Q: Can this mod work on other Android devices? Would we see a performance boost on them as well? If not why is it limited to the Galaxy S?
A: SGS has very very good hardware, but it has some parts of it's hardware poorly implemented. The filesystem that samsung chose to use is custom-built using FAT32 as a base, RFS. It has a lot of the problems that FAT32 has, and should have been left back in the 90s, or even the 80s.
One of the big issues with it is how it handles multiple requests - it blocks. It blocks everything. When your mail app wants to read the mail you just tried to view, but your twitter app is busy writing a new tweat it just received, your mail app is forced to wait.
This is bad, but it could be worse! And it is... your twitter app didn't just get one tweat, it got 50 tweaks. It is busy writing the tweats one by one to the filesystem. This would be fine, since all modern filesystems will buffer writes, so instead of writing each one at a time, they will batch them together and write it as a big chunk. Uh oh - RFS does no buffering at all! After each write, it will also write an update to the grafted-on journal system. Guess what happened to your mail you were trying to view while all this happened? It 'lagged' and you got a black screen for half a second, before the mail popped into view.
Luckily the hardware on the device is so good that you usually don't even notice the problem until you have a lot of apps running, all writing their updates when you unlock the phone.
This is mostly speculation based on experiments done on RFS -- RFS is closed source, and we have no idea if the problems are just badly set settings (such as a block size that is too small), coding bugs in the implementation, or if RFS is just really that badly designed.
This fix just grafts a buffer on top of the RFS filesystem, using a very very simple and fast filesystem, EXT2. It fixes most of the issues by writing to RFS as seldom as possible.
So no, this fix won't fix other devices, since they're already running quite close to maximum speed. The SGS at stock is running nowhere near maximum speed, and this lag fix takes it a bit closer. You could probably speed up other devices by tweaking the filesystem settings to give them a big buffer or similar, but it isn't really needed. (I haven't actually tried to put an EXT2 onto any other Android phone, as I don't have any other Android phone, so this is just speculation.)
Q: My phone is fast now!
A: Yeah.
Oh, awesome. I managed to post this in the wrong forum. Doh!
Could a moderator please move this to Android Dev sub forum?
haha looks awesome dude but you are correct, wrong section im gonna try it now, will report in 5 mins!
A few people in the other thread said they had the first lag fix working on the captivate. Anything that might change that with this release? I came to download the old one, and here a new one is
abra-cadabra...
*POOF*
Done!
E_man5112 said:
A few people in the other thread said they had the first lag fix working on the captivate. Anything that might change that with this release? I came to download the old one, and here a new one is
Click to expand...
Click to collapse
The old one is still here. Nothing has changed that should stop it working on the captivate though, but it is completely untested. Use the 1.0 (which has had a lot of testing) until this one has been put through the paces.
sirphunkee said:
abra-cadabra...
*POOF*
Done!
Click to expand...
Click to collapse
Thanks.
RyanZA said:
The old one is still here. Nothing has changed that should stop it working on the captivate though, but it is completely untested. Use the 1.0 (which has had a lot of testing) until this one has been put through the paces.
Click to expand...
Click to collapse
E_man5112 said:
A few people in the other thread said they had the first lag fix working on the captivate. Anything that might change that with this release? I came to download the old one, and here a new one is
Click to expand...
Click to collapse
I'm running the manual ext2 fix with Q scores 2000+. I'll try 2.0 Util tonight and post feedback....
Someone got some benchmarks?
Maybe for xxjp3? I only reach 1900 in quadrant.. /:
Sent from my GT-I9000 using Tapatalk
gonna test report in 5minutes
RyanZA said:
The old one is still here. Nothing has changed that should stop it working on the captivate though, but it is completely untested. Use the 1.0 (which has had a lot of testing) until this one has been put through the paces.
Click to expand...
Click to collapse
I'm in the process of flashing back to stock on my Captivate so I can give this a legit test. I'll report back here and let you know how it goes. Assuming my Captivate doesn't melt I'll update my OP from the thread about the original fix in the Captivate section!
About what lag is this?
Sent from my HTC Desire using XDA App
Dominik06 said:
Someone got some benchmarks?
Maybe for xxjp3? I only reach 1900 in quadrant.. /:
Sent from my GT-I9000 using Tapatalk
Click to expand...
Click to collapse
Benchmarks are roughly the same as 1.0. You can expect about 100 points more on average though, at least on my phone.
I just removed the V1 version and finished the V2.
It finally finished and rebooted the phone. now it tells me my internal memory storage is full. None of my Widgets will load.
Looking i see only 14MB free in internal storage.
thoughts?
Zilch25 said:
I'm in the process of flashing back to stock on my Captivate so I can give this a legit test. I'll report back here and let you know how it goes. Assuming my Captivate doesn't melt I'll update my OP from the thread about the original fix in the Captivate section!
Click to expand...
Click to collapse
Just as long as you point out that this fix isn't heavily tested yet!
RyanZA said:
Just as long as you point out that this fix isn't heavily tested yet!
Click to expand...
Click to collapse
Oh I know, I'm going to emphasize that heavily, lord knows I don't want to get stuck on tech support all night
clubtech said:
I just removed the V1 version and finished the V2.
It finally finished and rebooted the phone. now it tells me my internal memory storage is full. None of my Widgets will load.
Looking i see only 14MB free in internal storage.
thoughts?
Click to expand...
Click to collapse
Thoughts? That's bad.
You should be seeing roughly 215mb free. Did you see any errors in the log at all?
Everything is working fine for me. First reboot after lagfix had some problems with downloading apps from market, but after a second reboot it got fixed.
"Biggest" problem now, is just the phone stating that my internal phone storage is too low, with an icon on notification bar that I cannot remove. Already deleted some .bak from /data folder, any more tips what I can delete to get rid from this message?
Regarding the fix. apps are indeed much more snappier, no lag on the system when installing apps from market, and overall if the phone would continue like this for the next 48 hours, lag fix form me is solved. I had some problems after some 24h, with some lag, even with the previous version of the lag fix.
clubtech said:
I just removed the V1 version and finished the V2.
It finally finished and rebooted the phone. now it tells me my internal memory storage is full. None of my Widgets will load.
Looking i see only 14MB free in internal storage.
thoughts?
Click to expand...
Click to collapse
Looking through my old V1 remove script, I believe I was leaving behind the .bak files! Nastyyy... I'll update V2 to remove those if they're there on install. Will hopefully clear up any problems.

[Faq] Android Mini-FAQ (update 27 October)

Just thought this might be useful to some of the newer users, a list of what I see as the most commonly asked questions, and some misunderstood terms.
What is the difference between Nand, Haret and SD:
Nand; refers to the devices internal memory, which is NAND Flash memory, and is used to hold what is commonly called 'a ROM'. It is this memory which holds the Operating System, and can be 'Flashed' to change the data on it, once flashed it is persistent in memory, meaning that if you remove all power sources it will not lose this data, this is also known as 'Non-volatile Memory'. Nand Flash refers to a specific type of Flash memory, and gets it's name from the way the memory cells are constructed.
SD; Refers to the MicroSD cards we use in our devices, these are also Nand Flash but typically have slower transfer rates than the Nand Flash we have inside the device. typically used to store data, they can also be used to store the Android OS when used with Haret installs.
Haret; often confused with SD. It actually refers to Haret.exe, which is a program used to launch Linux systems from within another OS, such as Windows Mobile, think of it as a Virtual machine system, which allows users to run another OS. In our case, Haret refers to running Android within WM, it does not replace WM in Nand ROM, it does replace it in RAM however, but only until powered down, after that WM will boot from Nand next time the device is powered on.
What is my Panel Type?:
Panel; This refers to the actual LCD panel hardware, there are 3 types in use on Kaiser, and although Type2 seems most common, there are also Types 1 and 3. When running WM the panel type is autodetected and the correct settings are used for the display, however Android has no autodetect, so we must tell the OS which type we are using at boot, in Haret installs this is done with a line in Default.txt, in Nand it is set in the NBH we use to flash the kernel and other boot files needed to run Android. Display issues such as odd pixel colouration, streaks or lines on the display, white screen when exiting sleep, and other noticeable display issues can usually be cured by changing the panel type.
Other useful terms:
NBH; This is the file extension of a file intended for flashing to Nand, most commonly used to flash WM or Android, it can also be used to flash radio or splash screen.
Bootloader/tricolour screen; Both are the same, it refers to the screen display you get if you hold the camera button, and press power, on this screen are a few useful pieces of information, device type, (e.g KAIS130), SPL version, (e.g SPL-3.29.Hard), in the bottom white area it will say 'serial' or if connected to a PC, 'usb'. Remember to remove the SD card before entering Bootloader mode, as the bootloader also scans the SD for a file called KASIimg.nbh, and will run the updater utility if one is found.
HardSPL; This is a specially designed SPL that allows us to flash the Nand with an NBH file that was not signed by HTC, it also prevents itself from being overwritten, so that it is usually possible to reflash as long as we can get into Bootloader mode, this means we can, ( usually ), recover from a bad/corrupt flash.
Build and ROM; In WM terms, a ROM usually refers to a complete, ready to install, single file NBH, custom version of WM. However with Android we do not use the single file approach, and therefore we do not usually use the term ROM. Build is what we usually call a custom Android install. This is roughly equivalent to the WM 'cooked ROM', since each build is designed and built in a particular way, and may be any of the different android 'flavours'.
Flavours; Mostly used to describe the versions of android, these are, in historical order
1.1 - un-named, released feb 2009
1.5 - Cupcake, released april 2009
1.6 - Donut, released sept 2009
2.0/2.1 - Eclair, released as 2.0, oct 2009, and as 2.1, Jan 2010
2.2 - Froyo, released may 2010
3.0 - Gingerbread, scheduled release date, sep-dec 2010.
Odex'ed: As stock, android builds are odex'ed. Odexing involves generating an odex file for each app, which slightly lowers the memory used by the system, and may also speed up execution of apps, the downside is that it is difficult to modify odexed builds in order to tweak or theme them.
DeOdex'ed: a deodexed build is one in which the odex files are moved into the apk's, which slightly increases the memory used by /system, but allows modifications and tweaks to be used.
Deodex Vs Odex: Odex uses less space in /system, boots quicker, especially the initial boot after installation, however themeing is impossible, and various tweaks and modifications probably won't work. Deodexed uses more space in /system, has a slower initial boot, subsequent boots are much quicker, but may be a little slower than odexed, theming is a lot easier, as are modifications and tweaking of the build. ( most custom builds are deodexed due to the ease of theming and modifying ).
Bootsplash/Bootanimation:
The bootsplash is the static picture that appears as soon as you boot the device, usually is stays for 20 seconds or so before being replaced by the scrolling text showing Linux is booting.
The Bootanimation is the animated screen you see after Linux has booted, and usually loops until Android is loaded.
Sim Pin/SIM lock:
SIM Pin is often confused with the SIM lock, the SIM pin is the code you have to enter before using the phone when you start it up, this code is stored on the SIM card itself, and until recently caused a lot of problems, since Android could not decode it properly, this has been fixed in some flavours, Eclair and Froyo, but is still an issue in older flavours, such as Donut.
Sim lock also known as provider lock is a method used my phone service providers to ensure that you only use their service by locking the phone so that it only accepts that providers SIM cards, this lock code is stored on the phone, and may be unlocked by entering a code, or by bypassing it using unlocking software, once unlocked the phone will accept any other providers SIM card.
PUK the PUK is the Personal Unlock Code, and is a code that unblocks a SIM that has been blocked by too many unsuccessful attempts to enter the Sim Pin code, ( usually 3 attempts), this code must be entered to unblock the SIM card, usually the PUK is provided with the SIM Card, however if it is lost then some providers may give you the code, if the SIM has been registered by you.
Please feel free to add to this
Back to Windows Mobile:
If you need to reflash Windows Mobile, for whatever reason, these are my preferred methods:
I recommend using a Card Reader and MicroSD adaptor for working with SD cards, it makes life so much easier than relying on the kaiser to transfer and rename files, since most of us are used to handling files in Windows.
Method 1
1. Download a Stock shipped ROM, do not go crazy getting the latest custom 6.5 ROM, in my experience these often cause problems, if you want to go to Custom ROM's then flash stock first.
2. Extract the RUU_Signed.NBH file from the .exe, ( I use 7zip for this, but other archive utilities my work, winzip, winrar etc), rename the file to KAISimg.nbh and copy to the root of a freshly formatted SD card.
3. Insert the SD card in your Kaiser, pres and hold camera button while pressing power, ( you only need to press power briefly, but keep the camera button pressed until you see the tricoloured screen).
4. Once you get the tricolour screen, ( bootloader ), it should change to a grey screen with blue instructions, basically, press the power button and let it flash.
5. Once flashed, simply pull the battery/press reset and let it go through the first boot process.
Troubleshooting
Common problems with this method are that it will just not recognise the flash file, leaving you at the bootloader screen, this is usually caused by wrongly formatted sd cards, the card must be formatted FAT32. Other reasons are file name issues, make sure you have not accidentally mistyped the filename, or renamed it as kaisimg.nbh.nbh.
Method 2:
If Method 1 fails then the alternative method is USB flashing:
1. Disable Activesync, by unchecking the 'USB' option in Connection settings.
2. Remove the SD and SIM cards from the Kaiser.
3. Press Camera+Power to enter Bootloader.
4 Connect the usb cable, ensure that is says 'USB' at the bottom of the screen.
5. Flash the Stock ROM, usually by double clicking the downloaded stock ROM exe file, allow it to flash, and wait until it is finished before removing the USB Cable.
Troubleshooting
There are a few potential issues with this method also, if this method fails try another stock rom, the last shipped ROM from HTC was Kaiser_HTC_ASIA_HK_WWE_3.34.721.2, this is a generic stock 6.1 rom and should be compatible with most if not all kaiser variants.
Useful Links:
ThoughtlessKyle's Why my Wifi doesn't Work Invaluable Information on recent WiFi Issues, A 'Must Read'......
LCD Panel Information
Tinboot thread ( the thread that launched Nand flashing on kaiser ).
SuperJMN's Android Issues roundup thread ( common problems, as yet unsolved )
Adding language support
Miscellaneous Notes.
Radio Version
Just as in Windows Mobile, Radio Version seems to play as vital a role on Android.
There are a number of problems that may be related to radio version, and just as in WM, the effects are sometimes surprising.
Audio: yes, just like WM the wrong radio version can cause audio issues, ranging from no audio, to more subtle issues such as call audio not working, even though all other audio events work fine.
Wifi: no surprise really, the radio stack controls wifi as well as the more common phone/network activities.
Data/Network: Obvious one, but there are a number of complicating factors here too, geographical location seems to affect radio version, for instance, in the USA, 1.71 radios may offer the best signal, and data rates, while in Europe, using 1.71 may cause a lot of 'No Signal' issues, where the phone seems to drop off the network, the solution is usually an older radio version, in the UK 1.65 seems the best choice for most users, I have also had reports of 1.65 being the best for South Africa, Asis, while Australia seems to do better on 1.70 or 1.71. This may be due to the technology in use in those countries.
GPS Maybe, not sure about this one, had at least one report that a radio downgrade from 1.71 to 1.65 seemed to help with GPS, as far as I am aware the GPS and the Radio stack are not related, but who knows for sure?
Great guide! I was thinking about making similar one myself, but couldn't find free time
I'll maybe try to add something this weekend
hello maybe a stupid question
what is the differents between odex and unodex
sorry for my bad english
kisses
Rose
Not sure if this is a general dumb newbie question but I'm having it across different Android builds. Occasionally I have to reset the phone without shutting Android down. When I restart, any apps that were running at the time have to be uninstalled and re-installed because they now crash on startup (with a "program has stopped working" error.) Is there anything I can do about this?
CassandraN said:
Not sure if this is a general dumb newbie question but I'm having it across different Android builds. Occasionally I have to reset the phone without shutting Android down. When I restart, any apps that were running at the time have to be uninstalled and re-installed because they now crash on startup (with a "program has stopped working" error.) Is there anything I can do about this?
Click to expand...
Click to collapse
Not really a dumb question, however it depends how you are resetting, the reset button is a bad idea, Battery Pull is the preferred method, ( say it with me class, 'Battery Pull Good, Reset Button Bad' ).
However, why do you have to reset without shutdown? This often leads to data corruption, since the OS does not get a chance to synchronise properly before it closes, ( not that a battery pull should be any better, but for some reason it seems to cause fewer problems than resets).
Thanks for the FAQ, it is extremely useful to noob or semi-noob like I am.
Thanks, that's why I decided to start it, and if one person finds it useful, it was worth it
say it with me class
Click to expand...
Click to collapse
This is just hilarious
BTW, I tried some of the reboot apps in the market, non of them seemed to work (on 2.1)
the original reboot menu that you get when you hold the power button did not work at all. it just hangs on the loading circle.
In Froyo however, things are a bit different. the reboot option shuts downs the device instead, I did not try any reboot app yet
Any ideas about this zenity?
zenity said:
Not really a dumb question, however it depends how you are resetting, the reset button is a bad idea, Battery Pull is the preferred method, ( say it with me class, 'Battery Pull Good, Reset Button Bad' ).
However, why do you have to reset without shutdown? This often leads to data corruption, since the OS does not get a chance to synchronise properly before it closes, ( not that a battery pull should be any better, but for some reason it seems to cause fewer problems than resets).
Click to expand...
Click to collapse
I usually battery pull (I lost my stylus and the cheap replacement won't fit in the reset hole ), but I still seem to have problems.
I think my problems are due to a rogue app eating all the CPU. My suspicions are Twitter or Swiftkey. The phone becomes so unresponsive that sometimes a hard reset is the only way to make it useable again. I'll try to avoid it in future if I possibly can.
Tried taskiller? Useful for watching your memory, and killing tasks if needed, osmonitor is also useful for, well monitoring the os
I have noticed that the system does get very unresponsive at times, and it usually means low memory, try an eclair build if you are using a CM6 based one, I usually get about 30+Mb free in normal conditions, and if things start to get too slow, well a tap on the taskiller widget sorts that out
@Duke911:
As far as I am aware there is no real reboot option, in any build, I think it's a kernel issue, or perhaps just not implemented correctly, the safest option is a power off, which performs a proper shutdown, I do know there have been a few issues with data corruption that may be associated with using reboot, or the reset button, since these may cause the system to shutdown to rapidly to sync any data that may be cached, it's similar to pulling an SD card out of the computer, there may be data left unwritten in cache, which is why there is a nice safe removal option
This is a cool wiki for Kaiser Android users! Thank you!
By OP request, I am making this thread a sticky and making some adjustments to the forum. Please PM me if you have any requests. Thanks.
Precious work, Zenity!!!
video call anyone?
Is there any chance of getting a build to support video calling?
Video calling will need working front camera driver at least, which is not supported yet, I do not know if anyone is actively working on this, however, at some time, someone will take up this challenge, just as they have with other things which did not work previously
Sent from my HTC Dream using Tapatalk
hello..
I just want to ask about polymod and cyanogenmod.
what is the function, are they different from eclair or froyo?
thanks ^^
CyanogenMod builds are all Modifications of base android releases, these are complete rebuilds of the system, and include many improvements over the original release.
Polymod is an Eclair Mod based on OpenEclair 1.3 and is modded in a different way to Cyanogen's methods and style.
Most Eclair and Froyo builds are ports and modifications of Cyanogen bases, ( in fact I don't think there are any Froyo builds that are not CM6 based).
For Donut things are different, most builds are modifications and ports of official releases, such as Myn's Warm Donut.

Kaiser Kernel Thread - ONLY FOR KERNEL AND BUGS

I start this new thread because i want highlight only kaiser changes
Before posting use search button and look in this thread.
This is the kernel thread so all problem like "how to install","i can't install", "miss module", ecc ecc are not allowed. If you need to ask this probably you didn't read correctly the guide in atools.
Atools is multyplatform and need python.
2.6.32 kernel changelog
nand fixed
irq problem is now fixed
TODO:
finish battery support
rewrite camera driver
speed up gps
Latest releases are here
Atools thread
Maybe now kernel development will be a little easier to keep track of. I had a random freeze in the kernel before with a message i've never seen before. Didn't think about exporting the logs. I will upload if I see it again.
It was with the 11-29 .32 kernel and only happened after I just switched to it, installed my barebones build and rebooted for the 1st time. I have never seen it since so it could have been an anomaly. Like I said, it was an error I have never seen before and will catch a log if I ever see it again.
It would be helpful if someone could make a list of which types of problem are kernel related, which are build related and which could be either.
I am fairly new to android and not at all clear on what does what .
I belive it's kind of dificult to explain properly whats a kernel bug, and whats a build bug. At least with a few lines of text anyway...
We probably will have to deal with _no_kernel_related_ questions, but we must stick to the topic. If it's not kernel related, point to another thread. Or perhaps instruct to open a new one.
Also, it would be nice to have this stickied again, and if those asking questions would be so nice to inform about device ; kernel version+builddate ; type of instalation (nand VS sd img file VS sd partion VS whatever) ; radio, it would probably make it easier to understand why is the user facing issues.
IMHO of course
Ipv6 support in kernel
Hi Liquid,
Could you please include ipv6 support in kernel? It's needed by some apps, like google goggles, i compiled my own kernel with ipv6 and worked fine.
I hope there is enough kernel space to include ipv6 in the current kernel version
thanks
i try to compile a ipv6 6 month ago but i have some problems with wlan.
I change some part so i'm going to do new test on it
Question, not directly kernel related, but must start here.
If data using Yaffs is so unstable... why not another FS ?
I noticed that 2.6.25 kernel doesn't mount the partitions on relatime. Is there any chance we could do the same for 2.6.32 (which defaults to relatime). In 2.6.32, I tried to put it to atime but it doesn't work and just defaults to relatime. Could this possibly be the reason we have an unstable data partition in 2.6.32?
clemsyn said:
I noticed that 2.6.25 kernel doesn't mount the partitions on relatime. Is there any chance we could do the same for 2.6.32 (which defaults to relatime). In 2.6.32, I tried to put it to atime but it doesn't work and just defaults to relatime. Could this possibly be the reason we have an unstable data partition in 2.6.32?
Click to expand...
Click to collapse
Could you point me where are the partitions mounted ? normaly i would search /etc/fstab, but i fearin droid they're mounted elsewhere.
One thing i found in kerneltrap is nice...
"It's also perhaps the most stupid Unix design idea of all times. Unix is really nice and well done, but think about this a bit: 'For every file that is read from the disk, lets do a ... write to the disk! And, for every file that is already cached and which we read from the cache ... do a write to the disk!'"
Click to expand...
Click to collapse
This is explaining why relatime is better than atime. But if we could force a write to the disk on every access...
daedric said:
Could you point me where are the partitions mounted ? normaly i would search /etc/fstab, but i fearin droid they're mounted elsewhere.
One thing i found in kerneltrap is nice...
This is explaining why relatime is better than atime. But if we could force a write to the disk on every access...
Click to expand...
Click to collapse
its on /system/bin/userinit.sh
clemsyn said:
its on /system/bin/userinit.sh
Click to expand...
Click to collapse
You sure ? i only find a remount there ... to fix su
Has anyone recently synchronized our yaffs2 tree with the main one on www.yaffs.net? I noticed there are quite a few differences. I'm testing, too soon to tell if there are any notable differences.
I think scooter synchronised it a little over a month ago? I know its been about that long.
daedric said:
You sure ? i only find a remount there ... to fix su
Click to expand...
Click to collapse
you can add this to userinit.sh
busybox mount -o remount,rw,nouid,nodiratime,nodev /data
I think it depends on the rom but my ROM have those options. I'll upload my userinit.sh
Here is a copy of my userinit.sh
BTW, I added noatime on 2.6.25 kernel (which is suppose to be stable) and I got a Reboot and data corruption. I think if we mount 2.6.32 like 2.6.25's default mount, it could be better but it has to be done in the kernel itself coz 2.6.32 defaults to relatime.
aceoyame said:
I think scooter synchronised it a little over a month ago? I know its been about that long.
Click to expand...
Click to collapse
I synchronized my yaffs sources yesterday. It survived several battery-pulls yesterday with no corruption, but one single clean shutdown modified email settings for one account and made Maps FC. A dalvik clear cured maps but not the email settings.
Yaffs has data recovery capabilities, as proven by the battery pulls that gave no corruption at all.
So i think yaffs is good and nand is good. The data corruption problem lies outside the kernel and is a subject for a different thread.
Sent from my Android on HTC Kaiser/Kaiser/Polaris using XDA App
n2rjt said:
I synchronized my yaffs sources yesterday. It survived several battery-pulls yesterday with no corruption, but one single clean shutdown modified email settings for one account and made Maps FC. A dalvik clear cured maps but not the email settings.
Yaffs has data recovery capabilities, as proven by the battery pulls that gave no corruption at all.
So i think yaffs is good and nand is good. The data corruption problem lies outside the kernel and is a subject for a different thread.
Sent from my Android on HTC Kaiser/Kaiser/Polaris using XDA App
Click to expand...
Click to collapse
I read this quote about atime since you had problems with email on reboot
1. atime – This option causes Linux to record the last (or latest) time when a particular file was accessed. This information is particularly helpful for sysadmins or some programs (specially mail programs) to know when a particular file was last used/accessed.
So I think here is were atime option would help (email programs)
clemsyn said:
I read this quote about atime since you had problems with email on reboot
1. atime – This option causes Linux to record the last (or latest) time when a particular file was accessed. This information is particularly helpful for sysadmins or some programs (specially mail programs) to know when a particular file was last used/accessed.
So I think here is were atime option would help (email programs)
Click to expand...
Click to collapse
I think you're confused... the e-mail problem n2rjt was having was complete random. He had problems in e-mail and maps.. could be browser and settings. It's random.
Now:
1. atime – This option causes Linux to record the last (or latest) time when a particular file was accessed. This information is particularly helpful for sysadmins or some programs (specially mail programs) to know when a particular file was last used/accessed.
2. noatime – This option stops recording the last file access time when the file is just read. The noatime option eliminates all the writes to the disk each time a file was just read which previously used to happen with atime. However a write is made to a disk in case if a file is being changed/written.
3. relatime – A filesystem mount with this option causes the access time to be updated if they are (before the update has occurred) earlier than the modification time. This significantly cuts down the writes caused by atime updates. However not many people use this option because they are simply not aware of it.
source: http://linux.koolsolutions.com/2009...sb-part-4-noatime-and-relatime-mount-options/
Click to expand...
Click to collapse
Indeed relatime is the most usefull option for us.
Yet... reading this for the 2nd time:
Yaffs has data recovery capabilities, as proven by the battery pulls that gave no corruption at all.
So i think yaffs is good and nand is good. The data corruption problem lies outside the kernel and is a subject for a different thread.
Click to expand...
Click to collapse
Could it be... a proc atempting to unmount /data or remount,ro that causes a defect ?
One other thing... you're sync'ing to yaffs.net, would it be too bad/dificult to use the yaffs2 provided with usual HTC sources ?
I'm looking at Supersonic... it uses our 2.6.32 kernel....
daedric said:
One other thing... you're sync'ing to yaffs.net, would it be too bad/dificult to use the yaffs2 provided with usual HTC sources ?
Click to expand...
Click to collapse
The yaffs in the kernel at the minute is from the official android source, so what all other HTC devices are using
I tried the yaffs.net latest just as a comparison. It didn't change anything one way or the other.
Sent from my Android on HTC Kaiser/Kaiser/Polaris using XDA App
Trying to setup 2.6.32 kernel over 2.6.25 on my tytnII with Warm Donut on board.
Using Atools. Doing everything step-by-step, but when i reach this steps:
33 then flash from sd (gray)
34 reset device when it finished
it's booting from sd, (gray), show "Loading.." and never complete :-(
have wait more than hour.
What's possible reason?
Using zImage-11-27-10 from l1qu1d sourceforge.net site.
Thanks in advance for help.

Kernel With Separate Cache Partition

Hello everyone,
I've compiled a kernel which separates the NAND memory into 3 partitions (well more then that but anyway). These partitions are system, data and cache like a native Android phone (which also has recovery but we don't need that). Previously cache was linked to a directory on the data partition which was constantly becoming corrupt causing errors on start-up. Often clearing dalvik-cache would allow Android to boot but data was lost. There's nothing to say that this will solve the problem but i'm giving it a go so thought I would post it up for you to try also.
The cache partition is 20mb which means the data partition is only 90mb or so. If you like a million apps on your phone either put some on your SD card or don't use it
I haven't completely incorporated this partition into the initrd which means that currently it will only mount if data is also on NAND but this can be changed easily enough, but for testing purposes I want everything on the NAND chip anyway.
Downloads from market on all versions of Android, unless the init.rc directory is changed in Gingerbread, all go to the cache partition and are deleted on restart. What this means is that you can't download and install an app larger then 20mb (which isn't recommended anyway with the small amount of data space available). This is a drawback but for those that use data on SD it should be possible in the future to utilise more of the NAND memory for cache so you can install whatever you want. I don't know of many apps larger then 20mb anyway though.
I have included a modified version of ATools in the zip. The standard version will overwrite the partition values and the kernel won't work properly so if you need to modify the kernel use the version included. It is also important that you DO NOT change the system or data partition sizes in ATools as this hasn't been modified to account for the cache partition so will mess it all up.
I have also included an androidupdate.tar modules update for the kernel in case your wifi doesn't work after flashing the kernel.
I think that's it for now, let me know how it goes!
EDIT::
One last thing, you will need to wipe your DATA partition to use this kernel because some of your data may be positioned where the cache partition is now, so if you load this kernel and android is heavily corrupt you know what you have to do!
To check the kernel is working correctly you can type "df -h" into a terminal and it should show all of the current partitions including one called cache on mtdblock4.
Should now work with polaris, kaiser and vogue. There is a VOGUEIMG.NBH included for those who have trouble with ATools. It is completely untested on Vogue so sorry if it doesn't work.
EDIT
I have re-uploaded a modified kernel because there was some issues with data with the last one. If you have already applied the last one flash the new one and apply the module update again
testing will leave feedback
Ok, using your Scoot CyanogenMod 6.1.2 (RLS6) [16.03.2011], overclock via atools+roguetools to 529, gpu oc, battery units tweaked to suit my battery.
No SIM card yet, don't have one to put there, sync with google to get contacts.
Installed GoLauncher. Enabled JIT and Keep Launcher in memory.
Once in a while, Android is killing all apps, launcher included... strange...
Nevermind that, it was Cyanogen and the LongPress BackKey. LongPress on our Kaisers during lag can become short press
First couple of days of heavy use I've had in ages with no corruption. First day of my new job today so it's been on Google Navigation for 3 hours and used extensively during the day. Had to do a hard reset at one point and everything was fine. had a few soft reset's too. Don't get me wrong, i'd be surprised if this is a fix, but it's been a while since I've used my Kaiser this much and not had to wipe my data partition!
Update: CM is a bit slow, trying:
VaniljEclair RLS11 - A fast & stable CM 5.0.8 for Vogue/Kaiser/Polaris [2010-08-19]
And everyting seems good. I've pushed it a little, several normal reboots.
Had to reflash system (didn't reflash data). No errors, FC's, whatevar. Everything works, yet didn't try to make/receive calls. Its 1am here...
Now this particular version, has a god damn bug that is get the best of me. The Power Button and the red button won't make the phone go to standby. If i long press, i get the normal reboot/power off/airplane etc menu, on both keys. But single press is ignore... Any idea ?
scooter1556 , i have a question. It is not the purpose of the thread or kernel, but how difficult would it be to activate scalling of the cpu ?
Right now, the two 3 biggest issues with Android on the Kaiser are, IMHO, Data corruption, Battery life, performance.
Please share your thoughts
Using this kernel with Valentine 1.02. GPU overclocked and CPU @ 520mhz. Super fast and for the first time... no data corruption! Verry happy so far!
daedric said:
scooter1556 , i have a question. It is not the purpose of the thread or kernel, but how difficult would it be to activate scalling of the cpu ?
Right now, the two 3 biggest issues with Android on the Kaiser are, IMHO, Data corruption, Battery life, performance.
Please share your thoughts
Click to expand...
Click to collapse
Well in theory not too hard, there is a feature built into the linux kernel called cpufreq which is currently disabled in our kernel because our cpu and chipset code doesn't support it but krazy-killa has been working on getting it working in his kernels with a little success as far as i'm aware but i'm not that sure. I haven't personally looked into it but if I get some spare time I definitely will. I've started a new job now which i'm sure will keep me quite busy but I still intend to so some work on the Kaiser when I get time
Best of luck on your new job! I wish i had enough knowledge to continue the kernel development, but i'm quite a ignorant
Still, thank you, till now it's one of the best kernels i've used.
Hi Scoot!
I love your kernel. No data corruption so far (two days). did a few stylus resets and stuff.. Magical =D. Now IMO we only need better sleeping and autofocus to call kaiser a fully android device! Please Keep up the awesome job, scoot! thanx, danke, sposeeba, bedankt, aciu, dzenkuja!
Nice job scooter, I've been using Scoot CyanogenMod 7.0.2 RLS2 [28/04/11] @ 500MHz, and it seems fine so far.
I tried Fat Free Froyo before CyanogenMod, which also worked great for the few hours it was running. I'm not sure which one to stick with though.
Keep up the good work. I wish I could help with the development, but I have yet to learn programming (been ten years now ).
This kernel looks pretty stable, but just a few quick questions:
1) What filesystem is used for the cache? If YAFFS, could it get corrupted? If Yes, what would happend then?
2) Is it really needed to have 20MB for the cache? ATM it seems to be used only by a like 1-2MB on the cache partition, would not it be enough to have for example 10MB for the cache leaving more space for apps?
3) What is the difference using apps in the system and data partitions? If I would run off the space on the data partition, can I put some apps in the system apps folder to save the space without wandering about how it works?
Thanx for your great work, finally it seems to be fully usable for me and if you and Krazy-Killa would be able to work together to manage the power consumption, then it would be amazing, because I am going to get new phone (running some new extensive business and I can not afford to be not reachable when something happends on Kaiser) and give this lovely piece of HW to my son... And I really do not want him to have a WM machine But Android needs to be stable for him to use Well... he will get it for his 10th birthday at 6.9. so we still have some time to tweak it a bit more
if this works then it would be magical, your CM builds were so fast and awesome and if there's no data loss then... <3
Made 2 mistakes when building kernel (selected tilt instead of normal and forgot to OC to 480MHz), and running kingshui's 12/15/2010 build 2.2.1. seems ROCK solid and fast! I applaud your use of ramzswap for the extra 20mb, bravo!
I'm just hoping I can go back and rebuild the kernel with the correct settings without messing up the system/data/cache partitioning.
PoXFreak said:
Made 2 mistakes when building kernel (selected tilt instead of normal and forgot to OC to 480MHz), and running kingshui's 12/15/2010 build 2.2.1. seems ROCK solid and fast! I applaud your use of ramzswap for the extra 20mb, bravo!
I'm just hoping I can go back and rebuild the kernel with the correct settings without messing up the system/data/cache partitioning.
Click to expand...
Click to collapse
They aren't mistakes, those are the settings I need for my Kaiser. I included a modified version of ATools for you all to modify the kernel for your devices as I stated in the first post
a.s.j said:
1) What filesystem is used for the cache? If YAFFS, could it get corrupted? If Yes, what would happend then?
2) Is it really needed to have 20MB for the cache? ATM it seems to be used only by a like 1-2MB on the cache partition, would not it be enough to have for example 10MB for the cache leaving more space for apps?
3) What is the difference using apps in the system and data partitions? If I would run off the space on the data partition, can I put some apps in the system apps folder to save the space without wandering about how it works?
Click to expand...
Click to collapse
1) The cache partition is still using Yaffs2 because it is the easiest filesystem to configure at the minute, but the idea of making it a separate partition like on a native android device is that it can be changed to another filesystem in the initrd relatively easily. If it gets corrupted it will do what it used to I guess, but I haven't had any corruption as of yet so it's difficult to say. Hopefully if the cache partition get's corrupted it shouldn't affect data so you should just be able to wipe and format dalvik-cache in the install menu.
2) I made it 20mb because most android devices have 30mb or bigger and this is mainly because market app downloaded get downloaded here before being installed, so if you installed google maps for instance it would use up 6mb, plus the standard 1-2mb normally being used, but if you only had a 10mb cache for instance, you would only be able to install apps less then 8mb which is a little limiting really. I don't really care much about installing lots of apps in data or on the phone at all for that matter so having 95mb for data is more then enough for me.
3) You can put apps in the system partition in /system/app. The system partition is read only so all data for the app still goes to the data partition. You can still save a little data partition space though if you need it. Most installs of android are 80-95mb which should leave you 5mb or so to play with. Some all language builds pretty much use up all of the partition though so you need to look and see what space you have to play with before putting apps on the system partition. If you overload it you will probably end up corrupting it and having to reinstall. But to answer your last question, the system partition works in the same way as the data partition apart fro the fact that it is read-only and data is read/write.
I've modified my Kernel to use the NAND mtdblock3 (/data for everyone else) as the cache partition, since my NAND is pretty much shot to begin with, and have system and data on SD Card. So far it's made downloading Market Apps twice as fast, loading webpages pretty fast, and basically anything else that the cache is used for.
scooter1556 said:
They aren't mistakes, those are the settings I need for my Kaiser. I included a modified version of ATools for you all to modify the kernel for your devices as I stated in the first post
Click to expand...
Click to collapse
Scoot:
I understand that the settings built into the .nbh are for your device. What I was meaning was I needed to modify the CPU clock up to 480MHz, and for some odd reason my device swaps the "@" and "!" buttons if I set it to "tilt", among other buttons being set wrong.
Also, I am used to having the left and right softkeys set as "vol up" and "vol down" respectively. Is this something I need to make an androidupdate for, or do I have to write a new NBH?
PoXFreak said:
Scoot:
I understand that the settings built into the .nbh are for your device. What I was meaning was I needed to modify the CPU clock up to 480MHz, and for some odd reason my device swaps the "@" and "!" buttons if I set it to "tilt", among other buttons being set wrong.
Also, I am used to having the left and right softkeys set as "vol up" and "vol down" respectively. Is this something I need to make an androidupdate for, or do I have to write a new NBH?
Click to expand...
Click to collapse
Can you not do all of this using the ATools i provided in the attachment in the first post? You should be able to load the nbh into ATools and then set the CPU speed, change the keyboard type and remap the buttons and then save it before flashing. Just don't change the partition sizes as this will mess up the cache partition I added until I make it more permanent.

Categories

Resources