yashsingh1/xdaforums huggingface dataset:
[LG Optimus 2x] pastime1971:
i thought i would use this thread to figure out BSOD issue mostly because i think it is kernel related. maybe we can put together our thoughts to solve the problem.

to my knowledge, currently there are two occasions where BSOD occurs:

#1. charging w/ wall charger

#2. a long phone call

what is worse is that during the last three charging, my p990 BSOD'ed only once. (battery level was only 99% after hard rebooting. not sure if it fully charged or not.)

first, apparently phone is still working as the call in #2 is not interrupted. just the phone stops responding to user interaction. (or maybe i'm wrong because p990 uses the third slower cpu for phone capability as far as i know. but it still needs audio service and what-not, right ?)

second, upon BSOD, not only keys don't respond, but also usb debugging can't be connected. if you connect usb before BSOD occurs, adb runs, keeping phone awaking, and BSOD doesn't happen. there are other tricks to keep phone awaking during charging and prevent BSOD #1. this also makes it impossible(?) to get logcat or dmesg when BSOD happens.

first i thought it was similar to missing alarm issue that happened a long time ago w/ kernel. but it is NOT likely as that wouldn't cause #2.

minimum freq. & volt. or ALC were suspected once, but that should also affect the phone on battery, not just #1.

it could be cpu governor because p990 uses conservative governor while p999 uses performance governor, and i think p999 doesn't suffer this BSOD issue. (not fully confirmed though) however, it also doesn't explain why #1, and not on battery, either. (not that i know of.)

of course, #1 and #2 could be two separate issues w/ the same symptom.

any other thoughts ?
[LG Optimus 2x] :
Wish there was a setting to keep the phone awake through the whole call like there is for charging. That would prevent sod during long call. Need to look at deep sleep states. Will try by reverting lowering voltage. Since this was not happening in earlier nightlies, I still have hopes.
[LG Optimus 2x] kiljacken:
Great idea! I'm dropping my five cents on this too.

1) This time of BSOD'ing I highly suspect heat. Phone getting hotter, means more resistance, and therefore not enough voltage is available. The CPU then crashes without cleaning up or turning off, resulting in the black screen.

2) Here I highly suspect the senser that detects that your head is close to your phone in a call. If it doesn't update to see you are gone, it will keep the screen locked.

That's my ideas :)
[LG Optimus 2x] pastime1971:
another place to look carefully at could be frameworks/base/services/java/com/android/server/PowerManagerService.java
[LG Optimus 2x] pastime1971:
thanks, kiljacken. we definitely need help from those who know kernel, like yourself.

about 1, i was told that it doesn't BSOD w/ charger if you set 'Stay awake' option. that option should not reduce the heat generation, right ? of course, i got BSOD only once out of 3 times, so i am not sure if that option really prevents BSOD. (i will try that option and keep testing a couple of times to be sure.)

about 2, hackworks reports that he gets BSOD during a long phone call, and he is using a headphone. could proximity sensor gets confused even if your face was never close ?

another thought just hit me. we know that once phone goes into a sleep, only power key works to wake the phone up. volume key doesn't work even though volume rocker option is set. also play/pause button on headset doesn't work any more once phone goes into sleep either. it is like kernel stop listening to them. someone reported that play/pause button works as supposed to in other phone. so i guess that means it is not cm, but kernel.

although i have no idea if or when phone goes to sleep and stop listening during a phone call.

edit: Stay awake option seems to really keeps the device awake on during charging and prevents BSOD. (only tested once so far.) in occasions, screen didn't dim at all...
[LG Optimus 2x] Rusty!:
I'm pretty sure the phone isn't sleeping when it's on a call.
[LG Optimus 2x] kiljacken:
1) Hmm, strange..

2) Even stranger..

I'm starting to suspect a faulty powerbutton driver...
[LG Optimus 2x] SetiroN:
Hi,

when I repo init CM7, I get an error on line 6: syntax error near unexpected token 'newline'

Anybody got a clue?
[LG Optimus 2x] pastime1971:
see http://xdaforums.com/showpost.php?p=18113732&postcount=522

that question belongs to the kang thread.
[LG Optimus 2x] pastime1971:
it quite sounds like it.

it's like user interaction events are being missed... to my understanding...
[LG Optimus 2x] pastime1971:
additional confusing report. many people say the (long) phone call BSOD happens only on a low light environment...

on that account, hackworks tried reverting ALC commit. it is my understanding that it didn't help.

edit: i will confirm, but he may be using MIUI... not CM.

edit: it is confirmed that he is using MIUI. so, maybe it could not be related to the issue.
[LG Optimus 2x] :
I have hosed my laptop with the virtual machine setup to build kernel.hope to set it up by weekend and restart.has any one here set up adb on windows 7, any pointers would help or setting adb on punic for o2x would help too
[LG Optimus 2x] :
Pastime: could you get your code changes into vorkkernel and we start debugging on their base instead of having 2 parallel threads of discussion and experiments?
[LG Optimus 2x] pastime1971:
i could do that. but my patch didn't fix BSOD while charging. maybe they are not related to BSOD. so, i am not sure if that is necessary.

it sure is some clean up of cm kernel code, which should be directly submitted to cm.

when i checked the other day, vork has identical codes where i made patches.

what do you think ?

edit: on the second thought, it might be better to dedicate this thread for BSOD trouble shooting, and we invite vork team for consultation. i think vork thread should be only for vork kernel. i think they can help us here, because the root of issue is likely to be in cm, which vork bases on.

edit: also, just like cm nightly thread, there are many plain users in vork thread, and our discussion will get diluted. this thread is quiet and only those who are interested in kernel come here.
[LG Optimus 2x] Rusty!:
Yes, dead easy. Grab the Android SDK and these drivers: http://www.mediafire.com/file/duatv...bileDriver_S4981MAN34AP22_ML_WHQL_Ver_3.4.exe
[LG Optimus 2x] pastime1971:
real time kernel log

i've been looking for this.

"adb shell dmesg" just dumps the current log and exit, just like dmseg does on linux.

on linux, you can do "tail -f /var/log/messages" to see the kernel log in real time.

on cm, you can do "adb shell cat /proc/kmsg" from adb and it shows the kernel log in real time until you hit ctrl-C.

could be convenient in debugging kernel...
[LG Optimus 2x] pastime1971:
on a separate topic, i get this mismatch warning:

WARNING: drivers/built-in.o(.text+0x85838): Section mismatch in reference from the function composite_bind() to the (unknown reference) .init.data: (unknown)
The function composite_bind() references
the (unknown reference) __initdata (unknown).
This is often because composite_bind lacks a __initdata
annotation or the annotation of (unknown) is wrong.

WARNING: drivers/built-in.o(.data+0xa164): Section mismatch in reference from the variable hdmi_reg to the function .devinit.text:hdmi_reg_probe()
The variable hdmi_reg references
the function __devinit hdmi_reg_probe()
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,

could anyone tell us what they mean and how to fix it (if it needs fixing...) ?
[LG Optimus 2x] :
My XP stopped recognizing the new hardware after something messed up the drivers. I am getting windows 7 installed and will try once I get my laptop. Thanks for the links, will have to download all again.
[LG Optimus 2x] pastime1971:
i started tests of reverting each kernel commit that seems to be related to charging BSOD (to my understanding, which is very little).

will see if any reverting makes a difference.

but it's gonna be slow as i can only test charging once a day, because i believe i have to drain battery somewhat and charge it for a while. (i got BSOD two days in a row while charging it from 50% or so)

edit: test #1 failed to induce BSOD. either i was lucky today, or it fixed it. will have to continue testing again.

update: test #1, i definitely got BSOD after reverting single thread workqueue commit.

edit: test #2 reverted to 2011.08.22. first test was ok, but needs testing several times. 2nd test, overnight charging went fine. 3rd test, charging for 2 hours went fine.
[LG Optimus 2x] pastime1971:
i'm still trying to understand the code, but i think there is a bug in driver/star/star_battery_charger.c, line 2191, static void charger_control_with_battery_temp().

shouldn't it be

if ( charging_ic->status == CHG_IC_DEACTIVE_MODE )

for resuming charging cases ?

could somebody please take a look at the code and tell us ?

edit: i'm starting to think that kiljacken was right on the money. maybe AC charging overheats phone and goes into some sort of kernel error. that explains why it has to be charging for a while on AC. USB charging is a low current mode and doesn't overheat it. (initially, i had thought it was missing a wakelock or something, and charging has to be long enough for phone to go into a deep sleep.) keeping phone awake could be just a workaround, not a fix.
[LG Optimus 2x] :
The sod seems to have a pattern, dim light - nights. Try wall charging during day, never seen a sod. Long phone calls during day, no sods.
[LG Optimus 2x] spica1234:
Might be the overheat charging suspension in star_battery_charger.c doesn't work?
[LG Optimus 2x] pastime1971:
i got BSOD two days in a row last week at noon at work, where it is fairly well-lit.

also, i'm starting to think that charging BSOD and call BSOD may be two different causes w/ same result.
[LG Optimus 2x] pastime1971:
that's my major suspicion.

"star_battery_charger: Use version from p999's v21e" commit seems to fix overheat checking, but the part where it stops charging seems incorrect to me.

i will try to modify it and re-run some test.
[LG Optimus 2x] spica1234:
Means after it stops charging, It doesn't resume charging back aftr in normal temperature range?

Actually driver isn't perfect. Gauge and battery percentage doesn't match and conflicts. That's causing pre-mature battery shutdown with gapped mv datas:/
[LG Optimus 2x] pastime1971:
right, that's what i meant.

i understood the code as follows:

1. too hot -> not stopped -> stop charging

2. still hot -> not stopped -> do nothing if full, else resume charging

3. too cold -> not stopped -> stop charging

4. else -> ...

shouldn't #2 be "still hot -> stopped -> do nothing if full, else resume charging" ?

edit: or is it supposed to be "if not stopped, if full, don't bother cuz it will be stopped later, if not continue charging" ?
[LG Optimus 2x] spica1234:
Hmmm right. what's the diff between 10e and 21e "s star_battery_charger.c have you checked? can you upload 999s. 21E s star_battery_charger.c if you already have downloaded sources of 21e?
[LG Optimus 2x] pastime1971:
no, i don't have it.

i only have lge-kernel-star source, and individual commit patches (as diff file)
[LG Optimus 2x] spica1234:
Oh ok:)
[LG Optimus 2x] pastime1971:
[SOLVED] charging BSOD

i am testing benee's commit, https://github.com/VorkTeam/vorkKernel-LGP990/commit/7c758d88a6ade082b730f6dcab4488f79ab81b10 &https://github.com/VorkTeam/vorkKernel-LGP990/commit/78f54736a522319454e684bf74d46543873f6235 for charging bsod.

i've done one test, and didn't get bsod.

i will repeat two more tests, before i make conclusion, but so far so good.

edit: 2nd test, charging for 4.5 hours from 30%, and didn't get bsod. looking very good.

edit: 3rd test, charing for 3 hours from 35% and gmail sync off, and didn't get bsod. i think it is safe to say that charging bsod is fixed... :D

edit: now, it's a time for a public test. here is a cm kernel compiled w/ those two commits at ddbootimg-vork.zip if it flashes right, you should see "vork@xda 20111008#2" in Settings > About phone > Kernel version. it was boot.img was compiled w/ cm 165+. please test it and see if it fixes your charging bsod.
[LG Optimus 2x] pastime1971:
somewhat off the current topic, but does anybody know how to get "last_kmsg", kernel log before phone reboots or freezes ?
[LG Optimus 2x] pastime1971:
following is aremcee's reply on the issue:

if i understood it correctly, it sounds like nvrm_user bit can also affect in call bsod as well.

i suggest you test this kernel and see if it helps.

ddbootimg-nvrm.zip (Settings > About phone > Kernel version > vork@xda 20111010#4)

it's a current cm kernel w/ revert nvrm_user commit reverted.

edit: please specify which kernel you are testing w/ when you report back.

edit: bad news. i got bsod this morning w/ this kernel. better test the one in post #88. good news is that nobody downloaded it... :D
[LG Optimus 2x] :
Not to be a spoke in the wheel, I do not get a bsod ever when charging. I have been using cm7 and charging through the night from 15% to 100% using wall charger. I must say the phone remains cool.

The bsod during a call needs is something I have not reproduced in the last 3 calls. Have 1 tonight and let me see.

Overall, let us make very small change and try instead of multiple changes.
[LG Optimus 2x] pastime1971:
that would make sense if it has something to do w/ charging overheat protection like kiljacken said. (yet to be seen)

my theory goes like this. if it is overheat protection issue, it only happens w/ powerful charger and thick cable. that allows rapid charging and leads to temperature rise, and then something goes wrong. if charger is not powerful enough, or cable can't flow high current, then it is not rapid enough to induce it. if you keep phone awake, less current goes into battery as cpu takes some of it, and it is fine. it is more likely during night when phone is less active. nevertheless, this is just a speculation and no hard evidence yet.

i believe this kernel commit could fix in call bsod issue. also it is as half change as the first one (benee's commit). so it would be refinement of the first one.
[LG Optimus 2x] Rusty!:
Thing is, I often use a Nokia 5v 1200mA charger with no issue. Was hooked up to it for 5 and a half hours yesterday.
[LG Optimus 2x] pastime1971:
w/ a heavy duty cable ? the one i got was pretty thick.

anyway, it's just a theory, which has to be proven either right or wrong.

and your finding is likely to prove it wrong... :D

edit: evidence either for or against it is equally valuable.
[LG Optimus 2x] Rusty!:
Depends on your definition of heavy duty/thick I guess:

Apologies for the piss-poor quality, it was taken with an old HTC Typhoon :eek:

Charger is a Nokia AC-10X
[LG Optimus 2x] pastime1971:
thanks for the confirmation, rusty. (i used up all my thanks buttons.)

it looks about the same as i got from lg.

you put a hole in my theory... :p which is good, like i said, theory needs to be tested.
[LG Optimus 2x] pastime1971:
benee did a pull request to fix BSOD on lge-kernel-star, https://github.com/CyanogenMod/lge-kernel-star/pulls
[LG Optimus 2x] pastime1971:
@ hackworks,

how is your after call BSOD situation ?

lots of people on vork thread report no more BSOD on cm kernel.
[LG Optimus 2x] :
I still have not had a chance to test it on long call yet. The cm7 stable is where I am parked by patching the incall audio fix. Will keep this thread posted.
[LG Optimus 2x] Rusty!:
If anyone wants to test, I built a kang with the fix last night: http://fitsnugly.euroskank.com/gigglebread/p990/
[LG Optimus 2x] pastime1971:
http://review.cyanogenmod.com/#change,8917

Change I4a314ab7: 'in-accurate proximity' Setting + french (Part 1/2)

Work-around

for inaccurate proximity sensors, this will force phone

lcd to stay on after the call is terminated.

http://review.cyanogenmod.com/#change,8918

Change I6359bd2e: Proximity workaround patch (Part 2/2)

Work-around

for inaccurate proximity sensors, this will force phone

lcd to stay on after the call is terminated.

edit: being rejected...
[LG Optimus 2x] pastime1971:
Issue 3620:	Screen goes off during call despite of keep screen awake enabled

http://code.google.com/p/cyanogenmo...on Model Network Owner Summary Stars Priority

Issue 15291:	nexus one Gingerbread 2.3.3 blank screen on incoming phone call

http://code.google.com/p/android/issues/detail?id=15291
[LG Optimus 2x] pastime1971:
ok, i compared star_battery_charger.c in current lge-kernel-star and one that spica1234 modified for ODM sleep battery check, and i see 3 major differences

1. line 895, static void valid_cbc_check_and_process(NvU32 cbc_value)

if (bat_shutdown) return;

2. line 2472, static void tegra_battery_status_poll_work(struct work_struct *work)

if ( ... ) { star_battery_data_onetime_update(Update_Battery_Data); }

3. line 3344, static int tegra_battery_suspend(struct platform_device *dev, pm_message_t state)

if (( STAR_BAT_MAX(checkbat_sec, alarm_sec) - STAR_BAT_MIN(checkbat_sec, alarm_sec) ) > 20) // RTC alram set when Battery check time has many different from system alram time

(1) i think i checked this before, and didn't affect.

(2) i don't know whether star_battery_data_onetime_update needs to be called all the time, or conditionally, yet.

(3) i don't know whether alarm needs to be set always, or not. if i recall correctly, this part caused p990 to miss alarm by up to 20 min before when alarm was set always at next_batt_check, but didn't cause bsod. could it be somehow cause not waking up, if condition here is somehow not met, and it doesn't set alarm ?
[LG Optimus 2x] pastime1971:
i got charging bsod last night.

not sure if this is caused by new commits in kernel, or the old problem...
[LG Optimus 2x] pastime1971:
if you are interested, i have two kernel mods. see if they fix issues of alarm and/or bsod

1. ddbootimg1.zip (2) only in #103

2. ddbootimg2.zip (2) and (3) in #103
[LG Optimus 2x] pastime1971:
I/BootReceiver( 1149): Copying /proc/last_kmsg to DropBox (SYSTEM_LAST_KMSG)

i see that last kernel message is saved somewhere.

does anybody know where it goes or how to retrieve it ?
[LG Optimus 2x] pastime1971:
well, this morning i had a charging BSOD w/ ddbootimg2.zip

i don't know if there is correlation or not. but sometimes i plug in AC charger and phone wakes up saying "charging". last night it didn't, and i had to press power key to see the message. and this morning phone didn't wake up at all. battery was 100% though...
[LG Optimus 2x] pastime1971:
CM9 ICS kernel

CM9 ICS uses a different branch (android-tegra-2.6.32-ics).

git clone git://github.com/CyanogenMod/lge-kernel-star.git -b [B]android-tegra-2.6.32-ics[/B]

edit:i think USB and xt_qtaguid are not enabled yet in arch/arm/configs/star_cyanogenmod_defconfig

i apply the following patch once i git clone

diff -Npru lge-kernel-star-repo/arch/arm/configs/star_cyanogenmod_defconfig lge-kernel-star/arch/arm/configs/star_cyanogenmod_defconfig
--- lge-kernel-star-repo/arch/arm/configs/star_cyanogenmod_defconfig	2012-02-12 10:36:54.000000000 -0800
+++ lge-kernel-star/arch/arm/configs/star_cyanogenmod_defconfig	2012-03-18 02:15:51.056082813 -0700
@@ -550,6 +550,7 @@ CONFIG_NF_CONNTRACK_SANE=y
CONFIG_NF_CONNTRACK_SIP=y
CONFIG_NF_CONNTRACK_TFTP=y
# CONFIG_NF_CT_NETLINK is not set
+CONFIG_NETFILTER_TPROXY=y
CONFIG_NETFILTER_XTABLES=y
# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set
@@ -576,15 +577,19 @@ CONFIG_NETFILTER_XT_MATCH_IPRANGE=y
# CONFIG_NETFILTER_XT_MATCH_MAC is not set
# CONFIG_NETFILTER_XT_MATCH_MARK is not set
CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y
-CONFIG_NETFILTER_XT_MATCH_OWNER=y
+CONFIG_NETFILTER_XT_MATCH_OWNER=n
CONFIG_NETFILTER_XT_MATCH_POLICY=y
# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set
# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set
-# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set
+CONFIG_NETFILTER_XT_MATCH_QUOTA=y
+CONFIG_NETFILTER_XT_MATCH_QUOTA2=y
+CONFIG_NETFILTER_XT_MATCH_QUOTA2_LOG=y
+CONFIG_NETFILTER_XT_MATCH_QTAGUID=y
# CONFIG_NETFILTER_XT_MATCH_RATEEST is not set
# CONFIG_NETFILTER_XT_MATCH_REALM is not set
# CONFIG_NETFILTER_XT_MATCH_RECENT is not set
# CONFIG_NETFILTER_XT_MATCH_SCTP is not set
+CONFIG_NETFILTER_XT_MATCH_SOCKET=y
CONFIG_NETFILTER_XT_MATCH_STATE=y
# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set
# CONFIG_NETFILTER_XT_MATCH_STRING is not set
@@ -624,7 +629,7 @@ CONFIG_NF_NAT_AMANDA=y
CONFIG_NF_NAT_PPTP=y
CONFIG_NF_NAT_H323=y
CONFIG_NF_NAT_SIP=y
-# CONFIG_IP_NF_MANGLE is not set
+CONFIG_IP_NF_MANGLE=y
# CONFIG_IP_NF_TARGET_TTL is not set
# CONFIG_IP_NF_RAW is not set
# CONFIG_IP_NF_ARPTABLES is not set
@@ -1933,3 +1934,5 @@ CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y
CONFIG_NLATTR=y
+
+CONFIG_USB_G_ANDROID=y

as usual, do

cd lge-kernel-star
patch -p1 < PATCH_FILE
[Samsung Galaxy SL i9003] KciNicK:
these are the one from this http://xdaforums.com/showthread.php?t=1198158 but striped, you can save a lot room, like 4mb on the normalboot.img only tested on XXKPE, but it may work on any ROM with 2.6.35.7-CL409735 kernel...
[Motorola Photon 4G] justindcarter79:
Can i use my hdmi to output netflix to my hdtv?
[Motorola Photon 4G] Overstew:
With an Mhl adapter, yes.
[Motorola Photon 4G] diomark:
actually just a standard micro hdmi adapter.. (mhl adapter is for the Evo 3d..)

-m
[Motorola Photon 4G] slag02:
I can confirm no mhl adapter needed

Worked fine with standard micro hdmi to hdmi cable i used with my evo og

Sent via tapatalk from the Photon 4G
[Motorola Photon 4G] HYDE1000:
Might want to delete this so people don't mistake it for the right answer.

As the others stated, Netflix works fine going right to your TV with an HDMI cable meant for our phone.
[Samsung Infuse 4G] benyben123:
Hi

Just was wondering if there is a real, noticeable difference between the Infuse with its single-core and the Galaxy S-II with its Dual-core.

By "Real World", i mean for those of us who don't game on their phones (:

Thanks
[Samsung Infuse 4G] dilat3d:
Engadget just did a great piece on whether dual core is needed for a particular user. If you're a casual user (music browser phone text pics) then a single core phone is fine. Considering the infuse has the same shooter as the s2 and a bigger screen and gb soon, I think it's a better value but depending on the s2 pricing when it's stateside.
[Samsung Infuse 4G] netnerd:
yes! huge different! i mean the screen!

galaxy s2 with 4.27" looks like 4 inches!

i also have sony x10 with 4" inches, huge screen different on infuse 4.5"
[Samsung Infuse 4G] MikeyMike01:
The Infuse isn't in the same galaxy as the SGS II.

No matter how you slice it.
[Samsung Infuse 4G] Bronk93:
I had a dual core phone and I don't see a need for it until ice cream. I'm not a gamer I use my phone for web, email, text, music and Netflix. All of which run flawlessly on my Infuse. I can't see myself going smaller than a 4.5" screen again. The only thing I miss from my G2x is the HDMI mirroring. Granted the development base for the S2 is mind boggling, its not enough to persuade me to switch.

Sent from my Infuse. It is what it isn't.
[Samsung Infuse 4G] topiratiko:
Isnt the infuse just a captivate oc'ed to 1.2 and a bigger screen? :D

Sent from my Apex Blue JVR Samsung Captivate.
[Samsung Infuse 4G] rohit3192:
just :mad:

screen is super amoled PLUS.

camera 8mp+flash

SIZE DOES MATTER :D
[Samsung Infuse 4G] MikeyMike01:
It's an OC Captivate with a bigger screen, slightly better camera/ffc, more RAM and slightly better battery life. Can't forget pretend-4G either.

If Captivate is 1/10, and SGS II is 10/10, then Infuse is at best a 4/10.