Closed Bug 913371 Opened 11 years ago Closed 11 years ago

[Flatfish][porting]kernel is null exception when system suspends.

Categories

(Firefox OS Graveyard :: General, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: thomas, Assigned: jeff.cy.chuang)

References

Details

Attachments

(2 files)

Working with Jeff and John for this issue. Android does not have this issue.

<4>[   85.757231] wl_android_wifi_on: Success
<6>[   85.763307] CFG80211-ERROR) wl_cfg80211_attach_post : p2p0: p2p_dev_addr=02:22:f4:b9:a9:ed
<1>[   85.963340] Unable to handle kernel NULL pointer dereference at virtual address 00000000
<1>[   85.972399] pgd = c0004000
<1>[   85.975439] [00000000] *pgd=00000000
<0>[   85.979443] Internal error: Oops: 805 [#1] PREEMPT SMP
<4>[   85.985184] Modules linked in: bcmdhd ltr303 mpu6050 sw_keyboard ft5x_ts g2d_33 vfe_v4l2 hi253 s5k4ec_mipi vfe_subdev vfe_os cci cam_detect videobuf_dma_contig videobuf_core dc_sunxi(O) pvrsrvkm(O) lcd disp nand(O)
<4>[   86.006598] CPU: 3    Tainted: G           O  (3.3.0 #1)
<4>[   86.012548] PC is at __mutex_lock_slowpath+0xe8/0x1cc
<4>[   86.018207] LR is at __raw_spin_lock+0x2c/0x94
<4>[   86.023178] pc : [<c0585c00>]    lr : [<c0587d2c>]    psr: 60000013
<4>[   86.023185] sp : eeb41dc8  ip : eeb41da0  fp : eeb41dfc
<4>[   86.036020] r10: c083c4c0  r9 : c0095a88  r8 : eeb40000
<4>[   86.041859] r7 : d120ff24  r6 : d120ff1c  r5 : ee83f200  r4 : d120ff18
<4>[   86.049157] r3 : 00000000  r2 : eeb41dcc  r1 : 00000000  r0 : 00000001
<4>[   86.056456] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
<4>[   86.064628] Control: 10c5387d  Table: 6dd1406a  DAC: 00000015
<4>[   86.071053]
<4>[   86.071057] PC: 0xc0585b80:
<4>[   86.075830] 5b80  01843f96 e3530000 1afffff9 f57ff05f e3500001 1a000007 e1a0300d e3c35d7f
<4>[   86.085038] 5ba0  e3c5503f e595300c e5843014 ebec080b e5953000 ea000045 e3570000 1a000005
<4>[   86.094244] 5bc0  e5983000 e3130002 1a000003 e5953020 e3530063 da000000 eaffffdc e2846004
<4>[   86.103441] 5be0  e284700c e1a00006 eb000869 e5943010 e24b2030 e5842010 e50b7030 e50b302c
<4>[   86.112644] 5c00  e5832000 e50b5028 f57ff05f e3e08000 e1943f9f e1842f98 e3320000 1afffffb
<4>[   86.121864] 5c20  f57ff05f e3530001 0a000013 e3a0a002 f57ff05f e1943f9f e1842f98 e3320000
<4>[   86.131070] 5c40  1afffffb f57ff05f e3530001 0a00000a e585a000 e1a00006 eb0006f5 e3a00001
<4>[   86.140268] 5c60  ebec07de eb00042e e3a00001 ebec0814 e1a00006 eb000846 eaffffec e51b302c
<4>[   86.149449]
<4>[   86.149453] LR: 0xc0587cac:
<4>[   86.154224] 7cac  e3a02102 e1943f9f e3330000 01843f92 e3530000 1a000002 f57ff05f e3a00001
<4>[   86.163439] 7ccc  e89da818 e3a00001 ebebffc1 e1a0200d e3c23d7f e3c3303f e5930000 e7e000d0
<4>[   86.172650] 7cec  e3500000 089da818 ebfffbf3 e3a00000 e89da818 e1a0c00d e92dd830 e24cb004
<4>[   86.181858] 7d0c  e92d4000 e8bd4000 e1a0300d e1a04000 e3c35d7f e3c5503f e3a00001 ebebffe5
<4>[   86.191051] 7d2c  e3a00001 e1943f9f e3330000 01843f90 e3530000 1a000002 f57ff05f e5843004
<4>[   86.200242] 7d4c  e89da830 ebebffa2 e5953000 e3130002 0a000000 ebfffbd8 e5943004 e3530000
<4>[   86.209431] 7d6c  03a03001 05843004 eaffffff e5943000 e3530000 0affffe7 e5943004 e3530000
<4>[   86.218609] 7d8c  1afffff9 eaffffe3 e1a0c00d e92dd800 e24cb004 e92d4000 e8bd4000 ebffffd4
<4>[   86.227797]
<4>[   86.227801] SP: 0xeeb41d48:
<4>[   86.232568] 1d48  c07cdc64 00000000 eeb41d7c eeb41d60 c0008598 c000f908 c0585c00 60000013
<4>[   86.241753] 1d68  ffffffff eeb41db4 eeb41dfc eeb41d80 c000e518 c000839c 00000001 00000000
<4>[   86.250936] 1d88  eeb41dcc 00000000 d120ff18 ee83f200 d120ff1c d120ff24 eeb40000 c0095a88
<4>[   86.260122] 1da8  c083c4c0 eeb41dfc eeb41da0 eeb41dc8 c0587d2c c0585c00 60000013 ffffffff
<4>[   86.269305] 1dc8  c0577460 d120ff24 00000000 fffffffd d120ff18 d120fea8 00000003 ef218994
<4>[   86.278487] 1de8  00000000 c083c4c0 eeb41e14 eeb41e00 c0585d14 c0585b24 c07c2ea8 d120ff18
<4>[   86.287675] 1e08  eeb41e34 eeb41e18 c03b8748 c0585cf0 c03b8714 00000003 00000000 fffffffc
<4>[   86.296862] 1e28  eeb41e5c eeb41e38 c0081574 c03b8720 ffffffff c07dc6cc ffffffff 00000000
<4>[   86.306045]
<4>[   86.306049] IP: 0xeeb41d20:
<4>[   86.310822] 1d20  0000001d 00000000 eeb41d44 eeb41d38 c0063968 c0087bec eeb41d5c eeb41d48
<4>[   86.320005] 1d40  c000f988 c00638d0 c07cdc64 00000000 eeb41d7c eeb41d60 c0008598 c000f908
<4>[   86.329187] 1d60  c0585c00 60000013 ffffffff eeb41db4 eeb41dfc eeb41d80 c000e518 c000839c
<4>[   86.338368] 1d80  00000001 00000000 eeb41dcc 00000000 d120ff18 ee83f200 d120ff1c d120ff24
<4>[   86.347544] 1da0  eeb40000 c0095a88 c083c4c0 eeb41dfc eeb41da0 eeb41dc8 c0587d2c c0585c00
<4>[   86.356728] 1dc0  60000013 ffffffff c0577460 d120ff24 00000000 fffffffd d120ff18 d120fea8
<4>[   86.365912] 1de0  00000003 ef218994 00000000 c083c4c0 eeb41e14 eeb41e00 c0585d14 c0585b24
<4>[   86.375089] 1e00  c07c2ea8 d120ff18 eeb41e34 eeb41e18 c03b8748 c0585cf0 c03b8714 00000003
<4>[   86.384273]
<4>[   86.384278] FP: 0xeeb41d7c:
<4>[   86.389049] 1d7c  c000839c 00000001 00000000 eeb41dcc 00000000 d120ff18 ee83f200 d120ff1c
<4>[   86.398227] 1d9c  d120ff24 eeb40000 c0095a88 c083c4c0 eeb41dfc eeb41da0 eeb41dc8 c0587d2c
<4>[   86.407408] 1dbc  c0585c00 60000013 ffffffff c0577460 d120ff24 00000000 fffffffd d120ff18
<4>[   86.416589] 1ddc  d120fea8 00000003 ef218994 00000000 c083c4c0 eeb41e14 eeb41e00 c0585d14
<4>[   86.425777] 1dfc  c0585b24 c07c2ea8 d120ff18 eeb41e34 eeb41e18 c03b8748 c0585cf0 c03b8714
<4>[   86.434970] 1e1c  00000003 00000000 fffffffc eeb41e5c eeb41e38 c0081574 c03b8720 ffffffff
<4>[   86.444155] 1e3c  c07dc6cc ffffffff 00000000 00000003 00000000 eeb41e84 eeb41e60 c0081730
<4>[   86.453346] 1e5c  c0081538 00000000 c083c4c0 00000003 c058c928 ef126200 c07dcaa0 eeb41e9c
<4>[   86.462530]
<4>[   86.462534] R2: 0xeeb41d4c:
<4>[   86.467304] 1d4c  00000000 eeb41d7c eeb41d60 c0008598 c000f908 c0585c00 60000013 ffffffff
<4>[   86.476493] 1d6c  eeb41db4 eeb41dfc eeb41d80 c000e518 c000839c 00000001 00000000 eeb41dcc
<4>[   86.485678] 1d8c  00000000 d120ff18 ee83f200 d120ff1c d120ff24 eeb40000 c0095a88 c083c4c0
<4>[   86.494859] 1dac  eeb41dfc eeb41da0 eeb41dc8 c0587d2c c0585c00 60000013 ffffffff c0577460
<4>[   86.504035] 1dcc  d120ff24 00000000 fffffffd d120ff18 d120fea8 00000003 ef218994 00000000
<4>[   86.513221] 1dec  c083c4c0 eeb41e14 eeb41e00 c0585d14 c0585b24 c07c2ea8 d120ff18 eeb41e34
<4>[   86.522406] 1e0c  eeb41e18 c03b8748 c0585cf0 c03b8714 00000003 00000000 fffffffc eeb41e5c
<4>[   86.531596] 1e2c  eeb41e38 c0081574 c03b8720 ffffffff c07dc6cc ffffffff 00000000 00000003
<4>[   86.540781]
<4>[   86.540785] R4: 0xd120fe98:
<4>[   86.545554] fe98  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
<4>[   86.554729] feb8  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
<4>[   86.563915] fed8  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
<4>[   86.573106] fef8  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
<4>[   86.582294] ff18  ffffffff 00000001 00000000 00000000 eeb41dcc 00000000 c07d8fa4 00000000
<4>[   86.591471] ff38  00000029 00000000 00000001 00000000 00000000 00000000 00000000 00000000
<4>[   86.600655] ff58  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
<4>[   86.609834] ff78  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
<4>[   86.619016]
<4>[   86.619020] R5: 0xee83f180:
<4>[   86.623792] f180  00000000 00000000 00000000 00000000 00000001 00000000 ffffffff ffffffff
<4>[   86.632972] f1a0  c083f78c ef37ece4 ef194f24 00000000 ee83f1b0 ee83f1b0 00000000 00000000
<4>[   86.642158] f1c0  00000000 00000000 00000000 00000020 00000000 0000c350 0000c350 00000000
<4>[   86.651340] f1e0  ffffffff 00000000 00000000 00000000 00000000 00000000 00000000 00000000
<4>[   86.660527] f200  00000000 eeb40000 00000002 04208060 00000000 00000000 00000001 00000001
<4>[   86.669706] f220  00000078 00000078 00000078 00000000 c058c6f4 00000000 00000400 00400000
<4>[   86.678890] f240  00000001 00000000 00000000 d1228180 ef37fa8c 00000001 03cfee3e 00000014
<4>[   86.688074] f260  4c31072e 00000000 023c49e0 00000012 11939f3a 00000000 000007a9 00000000
<4>[   86.697250]
<4>[   86.697254] R6: 0xd120fe9c:
<4>[   86.702027] fe9c  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
<4>[   86.711209] febc  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
<4>[   86.720388] fedc  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
<4>[   86.729577] fefc  00000000 00000000 00000000 00000000 00000000 00000000 00000000 ffffffff
<4>[   86.738762] ff1c  00000001 00000000 00000000 eeb41dcc 00000000 c07d8fa4 00000000 00000029
<4>[   86.747934] ff3c  00000000 00000001 00000000 00000000 00000000 00000000 00000000 00000000
This is suspecious to something wrong on DVFS, still tracing now.

The following is correct kernel log.
===============================================================
[  321.320260] [DISP WRN] file:drivers/video/sun6i/disp/de_bsp/de/disp_layer.c,line:363:    all layer resource used!
[  321.333405] [pm]valid
[  321.336144] request_suspend_state: sleep (0->3) at 321322927448 (2013-09-05 05:49:30.442771891 UTC)
[  321.349517] [VFE]vfe_suspend
[  321.352733] [VFE]set camera to power off!
[  321.357265] [S5K4EC_MIPI]CSI_SUBDEV_PWR_OFF
[  321.362088] [VFE]mclk off
[  321.365151] [VFE_WARN]invalid gpio
[  321.368972] [VFE]vfe_suspend done!
[  321.372780] [VFE]vfe_suspend
[  321.376025] [VFE]set camera to power off!
[  321.379519] CPU2: Booted secondary processor
[  321.379569] Calibrating delay loop (skipped) already calibrated this CPU[CSI_DEBUG][HI253]CSI_SUBDEV_PWR_OFF
[  321.412680] CPU3: Booted secondary processor
[  321.412734] Calibrating delay loop (skipped) already calibrated this CPU
[  321.412858] net_ratelimit: 3 callbacks suppressed
[  321.420425] [VFE_WARN]invalid gpio
[  321.432656] [VFE]mclk off
[  321.432678] [VFE]vfe_suspend done!
[  321.441259] dhd_set_suspend: force extra Suspend setting
[  321.673591] [DISP]>>display early suspend done<<
[  321.679166] active wake lock sync_system
[  321.712103] [pm]valid
[  321.714972] PM: Syncing filesystems ... done.
[  321.735915] sunxi cpufreq suspend ok
[  321.740643] Freezing user space processes ... (elapsed 0.05 seconds) done.
[  321.808333] Freezing remaining freezable tasks ... (elapsed 0.02 seconds) done.
[  321.838326] [pm]3 state begin
[  321.844029] Suspending console(s) (use no_console_suspend to debug)
No longer blocks: 90334
Attached file kernel panic log
b2g log after suspend, screen is still off, but all key events are all normal by adb getevent.

D/Sensors ( 1265): tiger sensor 111111111111111111111
V/Sensors ( 1265): int sensors_poll_context_t::activate(int, int)
E/Sensors ( 1265): LightSensor: enable fd = 347 , input_sysfs_path = /sys/class/input/event4/device/enable
E/Sensors ( 1265): LightSensor set flags = 0,mEnabled = 0
E/GeckoConsole( 1265): [JavaScript Error: "this.oncancel is not a function" {file: "app://system.gaiamobile.org/js/list_menu.js" line: 147}]
I/Gonk    ( 1265): Setting nice for pid 1593 to 18
I/Gonk    ( 1265): Changed nice for pid 1593 from 1 to 18.
W/Gonk_Display( 1265): virtual bool mozilla::GonkDisplayJB::SwapBuffers(mozilla::EGLDisplay, mozilla::EGLSurface)
W/Gonk_Display( 1265): virtual void mozilla::GonkDisplayJB::SetEnabled(bool)
W/Gonk_Display( 1265): bool mozilla::GonkDisplayJB::Post(buffer_handle_t, int)
W/Gonk_Display( 1265): prepare done !! err = 0
W/Gonk_Display( 1265): set done !! err = 0
E/IMGSRV  ( 1265): :0: ####hwc_device_blank: disp:0 blank:1
E/GeckoConsole( 1650): [JavaScript Error: "[Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIProperties.get]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource://gre/modules/FormHistory.jsm :: <TOP_LEVEL> :: line 376"  data: no]" {file: "resource://gre/modules/FormHistory.jsm" line: 376}]
stop b2g and start b2g can workaround, but I wonder if this is the issue that gecko is reverted to 4.2.2.
Blocks: flatfish
1. kernel CPU_FREQ_DEFAULT_GOV_FANTASYS is disabled and rebuild all related kernel modules.
2. adding axp22-supplyer.kl for power button
3. Fixing HMI error
suspend and resume can work now.
kernel panic issue:
1. kernel CPU_FREQ_DEFAULT_GOV_PERFORMANCE is enable by default for faster bootup
2. when boot as Android, scaling_governor will be set to fantasys.
     this seems set by DynamicPManagerService.java this framework service.
   but when boot as FxOS, scaling_governor still is performance, system will kernel panic when suspend.
     and there is no DynamicPManagerService.java in FxOS source code.
3. we can add "write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor fantasys" to init.flstfish.rc
    instead of rebuild kernel, and we still need fantasys governor mode.

blank screen after resume:
after we fix kernel panic as above, LCD will be blank after resume. just wondering if there have another framework service take care of resume.
it has been resolved by enabling fantasy cpufreq in init.flatfish.rc
    write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor fantasys
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: