Jump to content

[2.6.32.9 kernel]: Working, call for testing


Guest errmsg

Recommended Posts

Guest errmsg

errmsg, I'm using you kernel from first post of the thread with stock ROM. Works good, but have several issues:

1. There is some kind of sleep of death. If there is some heavy app in memory, i.e. Navitel, smart goes to locked state and can't be unlocked. It doesn't respond to power button.

That's a very valuable info. I had this only once during 2 weeks with GitHub application trying to load my kernel repository. I was not able to reproduce this and I think that's because of acer's changes to lowmemorykiller. I filed a bug for this and will port the changes now.

I checked the boot logs and found this:


E/ActivityManager(  125): java.io.FileNotFoundException: /sys/module/lowmemorykiller/parameters/del_pid (No such file or directory)

...

E/ActivityManager(  125): java.io.FileNotFoundException: /sys/module/lowmemorykiller/parameters/add_pid (No such file or directory)

Update: Acer tries to keep process android.process.acore alive even in low memory condition. As you may remember Acer has created a "beautiful" Acer UI replacing stock android interface. I suppose it was so memory-hungry that Acer decided to prevent the user from seeing how all this UI gets killed by android.

Even HTC Sense on my wife's HTC Desire gets unloaded in low memory condition (which does not look like a good thing as well). So porting these changes may not be something that would be helpful.

2. Another minor issue also with locking, I've reproduced today, when attach usb cable to the phone also it can't be unblocked. Phone responds to the power button, I can see turn off power popup, but I was unable to choose something until unplugged cable. This is minor issue.

I think this may be related to the previous one, since touchscreen driver was not tampered with I am fairly sure it is something being killed that feeds input to the system. I will inspect ActivityManagerService to see what exactly it tries to keep alive.

Could you please run adb shell dmesg when the USB cable is attached and pastebin it? It would be great if you could record a video of the failure to see how USB plug in/out timing may affect it. I haven't experienced this on my phone, though.

Edited by errmsg
Link to comment
Share on other sites

Guest zabulus

Update: Acer tries to keep process android.process.acore alive even in low memory condition. As you may remember Acer has created a "beautiful" Acer UI replacing stock android interface. I suppose it was so memory-hungry that Acer decided to prevent the user from seeing how all this UI gets killed by android.

Even HTC Sense on my wife's HTC Desire gets unloaded in low memory condition (which does not look like a good thing as well). So porting these changes may not be something that would be helpful.

I've disabled the Acer's interface and I'm using ADW Launcher over stock interface. In stock ROM Acer decline two different terms: interface (some new) and launcher android term, as I understood. Maybe I'm wrong.

OK, I'll try to reproduce the second bug and post if something helpful would be found.

Link to comment
Share on other sites

Guest Master_T

is there any way to enable ADB during boot on this kernel? I was trying to port CM7 on this kernel (starting from the N1 build) but the phone just shows the kernel logo and reboots in recovery. I cannot debug this since ADB doesn't kick in soon enough... the ThePasto kernel enables ADB almost immediately (before bootanimation) so I guess it can be done... can it?

Link to comment
Share on other sites

Guest errmsg

is there any way to enable ADB during boot on this kernel? I was trying to port CM7 on this kernel (starting from the N1 build) but the phone just shows the kernel logo and reboots in recovery. I cannot debug this since ADB doesn't kick in soon enough... the ThePasto kernel enables ADB almost immediately (before bootanimation) so I guess it can be done... can it?

I built a version with product_id set to 0x3202 and persist.service.adb.enable=1, the build is acer_a1-kernel-2013-06-17-2.6.32.9-adbboot-gb0b4856-update.zip. I hope this helps.

I used ram console exclusively to debug these issues, I wonder whether making a recovery version with this kernel would help. After all bringing recovery environment is easier than the full-fledged android.

Another thing that puzzles me is why it reboots into recovery? After all my build failures when kernel panicked it either hung or crashed and rebooted into regular mode again. Is there anything in the system image you are trying this kernel with that might reboot the device into recovery? Some sort of system service?

Link to comment
Share on other sites

Guest errmsg

I have just noticed that the CPU gets really hot while battery is being charged leading to shutting down the charging process. Filed a bug, investigating now.

Link to comment
Share on other sites

Guest Master_T

I built a version with product_id set to 0x3202 and persist.service.adb.enable=1, the build is acer_a1-kernel-2013-06-17-2.6.32.9-adbboot-gb0b4856-update.zip. I hope this helps.

I used ram console exclusively to debug these issues, I wonder whether making a recovery version with this kernel would help. After all bringing recovery environment is easier than the full-fledged android.

Another thing that puzzles me is why it reboots into recovery? After all my build failures when kernel panicked it either hung or crashed and rebooted into regular mode again. Is there anything in the system image you are trying this kernel with that might reboot the device into recovery? Some sort of system service?

Yeah, it would be cool to have a build based on the new partition layout, the one used by CWM/TWRP and the CM7.2+ roms.

EDIT: tried this kernel, adb is active during boot, but adb logcat isn't, it returns immediately without printing anything.

Edited by Master_T
Link to comment
Share on other sites

Guest zabulus

Yeah, it would be cool to have a build based on the new partition layout, the one used by CWM/TWRP and the CM7.2+ roms.

EDIT: tried this kernel, adb is active during boot, but adb logcat isn't, it returns immediately without printing anything.

You should check for /proc/kmsg file during boot.

Link to comment
Share on other sites

Guest errmsg

I've built 2.6.35 kernel based on commit 160d42d529f7a5563bbd7cd117c83b7f434f0c22 from android-msm-2.6.35.

(If there's someone crazy enough to try this on their Liquid, here's that particular boot.img).

I guess this means that there's no more reason to keep testing 2.6.32.9.

I will try to get the kernel tree in a usable shape, merge all the outstanding commits and then open a new "Call for testing" topic :).

post-839017-0-44270800-1371652410_thumb.

Edited by errmsg
Link to comment
Share on other sites

Guest Mura88

I've built 2.6.35 kernel based on commit 160d42d529f7a5563bbd7cd117c83b7f434f0c22 from android-msm-2.6.35.

(If there's someone crazy enough to try this on their Liquid, here's that particular boot.img).

I guess this means that there's no more reason to keep testing 2.6.32.9.

I will try to get the kernel tree in a usable shape, merge all the outstanding commits and then open a new "Call for testing" topic :).

I have to admit, I'm really envious of the ability that you have in these things, I wish I had the time to learn this knowledge.

Link to comment
Share on other sites

Guest zabulus

I've built 2.6.35 kernel based on commit 160d42d529f7a5563bbd7cd117c83b7f434f0c22 from android-msm-2.6.35.

(If there's someone crazy enough to try this on their Liquid, here's that particular boot.img).

I guess this means that there's no more reason to keep testing 2.6.32.9.

I will try to get the kernel tree in a usable shape, merge all the outstanding commits and then open a new "Call for testing" topic :).

Is this usable boot.img for daily testing, or it is better to wait for new build and new topic?

Link to comment
Share on other sites

Guest errmsg

Is this usable boot.img for daily testing, or it is better to wait for new build and new topic?

No, it is just a hacked up build that works only when booted via fastboot (the display will be blank when flashed to the boot partition, I am investigating this).

Definitely broken: wifi (needs some minor adjustments), light sensor, 3D, framebuffer when booted in regular mode.

I haven't tested it a lot and that is only a proof of concept. I will post a new topic, in the mean time the interested parties may follow android-kernel-msm repository where I will be pushing changes once they are actually stable enough to be flashed on the devices.

Update: here's the POC patch for rev 160d42d529f7a5563bbd7cd117c83b7f434f0c22 bringing Acer Liquid support - android-msm-2.6.35-over-160d42d529f7a5563bbd7cd117c83b7f434f0c22.patch.gz, one needs to cherry-pick 8c5d33885dc14e05d755fc8270e9ca92ba8fcc73 into the branch for it to compile.

Edited by errmsg
Link to comment
Share on other sites

Guest errmsg

Reproduced sleep of death, but when I've plugged USB, phone had restarted. Here is last_kmsg dumped after restart:

http://pastebin.com/iv39Qhu4

Great!

Re: restart - it may be that APPS CPU went into some unstable state, failed to reply to MODEM when USB got inserted and the MODEM watchdog rebooted the device.

Filed as bug #20. Could you please confirm that happened last time when the WiFi was also on?

Link to comment
Share on other sites

Guest zabulus

Great!

Re: restart - it may be that APPS CPU went into some unstable state, failed to reply to MODEM when USB got inserted and the MODEM watchdog rebooted the device.

Filed as bug #20. Could you please confirm that happened last time when the WiFi was also on?

Can not confirm anything, because I left my phone for a while. When I've returned it is already slept as Sleeping Beauty and doesn't respond to the power button. I have "2x battery app" it manages wifi turning on/off automatically. Periodically every 15 minutes it turns wifi on if screen is turned off.

Edited by zabulus
Link to comment
Share on other sites

Guest errmsg

Can not confirm anything, because I left my phone for a while. When I've returned it is already slept as Sleeping Beauty and doesn't respond to the power button. I have "2x battery app" it manages wifi turning on/off automatically. Periodically every 15 minutes it turns wifi on if screen is turned off.

Ok, I will keep the WiFi on to see whether it is related. Acer has implemented an interesting 2-level way of controlling WiFi power/MMC card detect (WiFi module is actually connected to the second SD card slot and works via SDIO) - both the userspace and BCM4329 module are able to turn the power to the card on and off and I have not yet understood all the implications of this.

Edited by errmsg
Link to comment
Share on other sites

Guest errmsg

I gave that kmsg another look and I am afraid I was not able to find anything extremely wrong there, as if the system continued to work (or was halted completely @ 50177.672251 which was around 2013-06-20 08:50:07 UTC. Could you please share the list of installed applications and dmesg output after a fresh phone restart to make sure we have the same hardware configuration?

I believe I am missing the conditions to reproduce this issue.

Additonally please share bootmode_info the data from /sys/kernel/debug/acer_smem on the device after the crash:


# mount -t debugfs nodev /sys/kernel/debug

# cd /sys/kernel/debug/acer_smem

# cat bootmode_info

It would show the reason of system startup/restart in hex, as in

magic_num_1: a4bc385f

apps_boot_reason: 77665500

0x77665500 is "bootloader", see arch/arm/mach-msm/pm.c.

Edited by errmsg
Link to comment
Share on other sites

Guest zabulus

I've faced wake on lock problem again, but in this case the phone waked after some time. Ican confirm that problem is relates to wifi module. There was a open WIFI in cafe, and phone had problems with waking up, turns on after 10-20 seconds after power button pressed. I've turned WIFI down and unlocking got work back. I'll paste dmesg some time later, have problems with driver.

Link to comment
Share on other sites

Guest errmsg

Having performed a cleanup for android-msm-2.6.32 branch of codeaurora tree, here's another build of 2.6.32 which can be flashed on the device.

  • Device will wake up only when Power button is pressed (earlier it would wake up on all the hardware buttons)
  • Removed I2C lockup handling by acer. I've been testing this for 2 days and found no lockups, YMMV

I haven't done any more investigation of WiFi lockup since I can't get it reproduced for now.

Link to comment
Share on other sites

Guest errmsg

I believe I have finally reproduced the bug with lockup and it's not wifi issue, at least not immediately related.

I2C bus becomes broken which breaks everything that speaks I2C protocol - touchscreen, battery, AVR (keypad & LCD/Keypad LEDs), compass... and other stuff. I got it in the last kernel revision where I took out the I2C bus restart. Well, that means I need to put the code back in and make sure next time something like this happens I have much more debug info there.

post-839017-0-31268100-1372091167_thumb.

Edited by errmsg
Link to comment
Share on other sites

Guest errmsg

@zabulus (and other interested parties) - could you please test this build: acer_a1-kernel-2013-06-25-2.6.32.9-i2c-g9319eb1-dirty-update.zip - it has Acer's changes (and a new default splashscreen :) ) which relate to resetting the bus only, and the bus suspend/transaction finish checks are dropped.

In case of bus failure it will print a message with "[bug #20]" text to help understanding whether that's actually that i2c bus bug or not.

It looks like some A1 component can drive MSM i2c bus into a problem and that component is no longer present in A4 - no workarounds there.

Link to comment
Share on other sites

Guest errmsg

This text should appear in kmsg, am I right?

Yes, that's correct. When I2C bus status becomes 0x2100 (an error condition, according to acer) it will print the message about this.

Link to comment
Share on other sites

Guest errmsg

Here is another crash using the latest "dirty" build. WiFi was turned off I've just made a call, tried to reply and phone had crashed.

http://pastebin.com/vQndpfpG

I was unable to mount acer_smem and dump the bootmode_info after crash.

"mount: No such device"

Hm, that's not good.


# cat /proc/version                                                            

Linux version 2.6.32.9-i2c-g9319eb1-dirty (abuild@biff) (gcc version 4.4.0 (GCC) ) #6 PREEMPT Tue Jun 25 08:10:44 UTC 2013

# mount -t debugfs nodev /sys/kernel/debug

# cd /sys/kernel/debug/acer_smem

# cat bootmode_info

magic_num_1: 1ef6f906

apps_boot_reason: 927e9b54

But what's even worse is the kernel not being aware about the reboot happening. I will fix these in my init version as it looks like persist.radio is not readable/modifiable by rild: - These are uid 10001, which is the second non-privileged app user, not rild.

[  501.337006] init: sys_prop: permission denied uid:10001  name:persist.radio.mcc.ecclist

[  501.337827] init: sys_prop: permission denied uid:10001  name:persist.radio.mcc.ecclist.cata

[  501.350902] init: sys_prop: permission denied uid:10001  name:persist.radio.mcc.ecclist2

[  501.351303] init: sys_prop: permission denied uid:10001  name:persist.radio.mcc.ecclist2.cata

By any chance, just a stab in the dark, do you happen to be a "life:)" (MCC 255 MNC 06) subscriber?

Edited by errmsg
Link to comment
Share on other sites

Guest zabulus

Hm, that's not good.


# cat /proc/version

Linux version 2.6.32.9-i2c-g9319eb1-dirty (abuild@biff) (gcc version 4.4.0 (GCC) ) #6 PREEMPT Tue Jun 25 08:10:44 UTC 2013

# mount -t debugfs nodev /sys/kernel/debug

# cd /sys/kernel/debug/acer_smem

# cat bootmode_info

magic_num_1: 1ef6f906

apps_boot_reason: 927e9b54

But what's even worse is the kernel not being aware about the reboot happening. I will fix these in my init version as it looks like persist.radio is not readable/modifiable by rild: - These are uid 10001, which is the second non-privileged app user, not rild.

[ 501.337006] init: sys_prop: permission denied uid:10001 name:persist.radio.mcc.ecclist

[ 501.337827] init: sys_prop: permission denied uid:10001 name:persist.radio.mcc.ecclist.cata

[ 501.350902] init: sys_prop: permission denied uid:10001 name:persist.radio.mcc.ecclist2

[ 501.351303] init: sys_prop: permission denied uid:10001 name:persist.radio.mcc.ecclist2.cata

By any chance, just a stab in the dark, do you happen to be a "life:)" (MCC 255 MNC 06) subscriber?
I've tried to mount from the terminal emulator on the phone, beacuse of troubles with the driver on home PC. I'll try to dump debug info via adb from another PC where drivers and adb works. Yes it was a problem with terminal emulator. Here is output:

magic_num_1: 00000003

apps_boot_reason: 90020000

Yes I do, it is a "life:)" cell provider.

Edited by zabulus
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.