[Openpvrsgx-devgroup] [Letux-kernel] letux v5.4 + suspend
Andreas Kemnade
andreas at kemnade.info
Wed Nov 27 22:05:12 CET 2019
On Wed, 27 Nov 2019 21:49:16 +0100
"H. Nikolaus Schaller" <hns at goldelico.com> wrote:
> > Am 27.11.2019 um 21:38 schrieb Andreas Kemnade <andreas at kemnade.info>:
> >
> > Hi,
> >
> > On Tue, 26 Nov 2019 23:01:08 +0100
> > Andreas Kemnade <andreas at kemnade.info> wrote:
> >
> >> Hi,
> >>
> >> while I get down to the typical 26mA idle current on GTA04A5, I do not
> >> wake up from suspend there.
> >> Not investigated yet.
> >>
> > Played around on the letux3704:
> >
> > init=/bin/bash
> > mounting sysfs, proc
> > /etc/rcS.d/udev start
> >
> > and then doing rtcwake -s 20 -m mem
> > does not wake up
> >
> > rm -rf /lib/modules/5.4.0-letux+/kernel/drivers/gpu/drm/pvrsgx
> >
> > fixes the issue.
>
> Important finding. So this means the SGX driver stops wakeup from suspend?
> I have added Tony and the openpvrsgx mailing list.
>
> For more dynamic tests you could
> * boot
> * lsmod | grep pvrsgx
> * echo blacklist pvrsrvkm_driver_name >/etc/modprobe.d/pvr.conf
> * reboot
> * modprobe pvrsrvkm_driver_name to see what it does influence
>
well, no_console_suspend gives more interesting results:
[ 296.323822] Freezing user space processes ... (elapsed 0.001 seconds) done.
[ 296.342559] OOM killer disabled.
[ 296.350738] Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
[ 296.374755] dmtimer posted=0
[ 296.456512] wwan_on_off_suspend: WWAN suspend
[ 296.473388] ------------[ cut here ]------------
[ 296.478881] WARNING: CPU: 0 PID: 1410 at drivers/gpu/drm/drm_modeset_lock.c:266 modeset_lock+0xc8/0xf4 [drm]
[ 296.489410] Modules linked in: omapdrm libertas_sdio libertas cfg80211 snd_soc_simple_card snd_soc_simple_card_utils snd_soc_omap_twl4030 wwan_on_off panel_simple encoder_opa362 pvrsrvkmy
[ 296.575866] CPU: 0 PID: 1410 Comm: rtcwake Not tainted 5.4.0-letux+ #3
[ 296.582794] Hardware name: Generic OMAP36xx (Flattened Device Tree)
[ 296.589508] [<c010fe8c>] (unwind_backtrace) from [<c010b28c>] (show_stack+0x10/0x14)
[ 296.597717] [<c010b28c>] (show_stack) from [<c07ca8d0>] (dump_stack+0x88/0xa8)
[ 296.605407] [<c07ca8d0>] (dump_stack) from [<c013130c>] (__warn+0xcc/0xe8)
[ 296.612701] [<c013130c>] (__warn) from [<c01316c8>] (warn_slowpath_fmt+0x74/0xa0)
[ 296.621002] [<c01316c8>] (warn_slowpath_fmt) from [<bf03d2b0>] (modeset_lock+0xc8/0xf4 [drm])
[ 296.630706] [<bf03d2b0>] (modeset_lock [drm]) from [<bf03d370>] (drm_modeset_lock_all_ctx+0x14/0xb4 [drm])
[ 296.641540] [<bf03d370>] (drm_modeset_lock_all_ctx [drm]) from [<bf280d54>] (drm_atomic_helper_suspend+0x34/0xc8 [drm_kms_helper])
[ 296.654357] [<bf280d54>] (drm_atomic_helper_suspend [drm_kms_helper]) from [<bf28406c>] (drm_mode_config_helper_suspend+0x28/0x5c [drm_kms_helper])
[ 296.669006] [<bf28406c>] (drm_mode_config_helper_suspend [drm_kms_helper]) from [<bf2d4a50>] (pvr_suspend+0x18/0x48 [pvrsrvkm_omap3630_sgx530_125])
[ 296.683349] [<bf2d4a50>] (pvr_suspend [pvrsrvkm_omap3630_sgx530_125]) from [<c0539380>] (dpm_run_callback+0x28/0x54)
[ 296.694488] [<c0539380>] (dpm_run_callback) from [<c053abec>] (__device_suspend_noirq+0xec/0x258)
[ 296.703887] [<c053abec>] (__device_suspend_noirq) from [<c053adf4>] (dpm_suspend_noirq+0x9c/0x194)
[ 296.713409] [<c053adf4>] (dpm_suspend_noirq) from [<c0172dbc>] (suspend_devices_and_enter+0x168/0x504)
[ 296.723266] [<c0172dbc>] (suspend_devices_and_enter) from [<c0173330>] (pm_suspend+0x1d8/0x270)
[ 296.732482] [<c0173330>] (pm_suspend) from [<c0171d28>] (state_store+0x9c/0xcc)
[ 296.740264] [<c0171d28>] (state_store) from [<c02caa60>] (kernfs_fop_write+0x144/0x1b0)
[ 296.748748] [<c02caa60>] (kernfs_fop_write) from [<c0255f38>] (__vfs_write+0x28/0xe0)
[ 296.757080] [<c0255f38>] (__vfs_write) from [<c02573b4>] (vfs_write+0x98/0xbc)
[ 296.764739] [<c02573b4>] (vfs_write) from [<c025753c>] (ksys_write+0x68/0xb4)
[ 296.772308] [<c025753c>] (ksys_write) from [<c0101000>] (ret_fast_syscall+0x0/0x54)
[ 296.780395] Exception stack(0xcf349fa8 to 0xcf349ff0)
[ 296.785766] 9fa0: 00000004 b6f00000 00000004 b6f00000 00000004 00000000
[ 296.794433] 9fc0: 00000004 b6f00000 000260d0 00000004 00000004 00000000 00013978 be828c7b
[ 296.803070] 9fe0: 00000000 be828b7c b6e3ec3d b6e77cf6
[ 296.808746] ---[ end trace d4a3f2367acac9b7 ]---
[ 296.813751] 8<--- cut here ---
[ 296.817016] Unable to handle kernel NULL pointer dereference at virtual address 0000000c
[ 296.825653] pgd = 7d1f9ddb
[ 296.828552] [0000000c] *pgd=8f41e831, *pte=00000000, *ppte=00000000
[ 296.835296] Internal error: Oops: 17 [#1] PREEMPT SMP ARM
[ 296.841003] Modules linked in: omapdrm libertas_sdio libertas cfg80211 snd_soc_simple_card snd_soc_simple_card_utils snd_soc_omap_twl4030 wwan_on_off panel_simple encoder_opa362 pvrsrvkmy
[ 296.927215] CPU: 0 PID: 1410 Comm: rtcwake Tainted: G W 5.4.0-letux+ #3
[ 296.935577] Hardware name: Generic OMAP36xx (Flattened Device Tree)
[ 296.942230] PC is at atomic_cmpxchg_relaxed+0xc/0x28
[ 296.947509] LR is at atomic_cmpxchg_relaxed+0xc/0x28
[ 296.952758] pc : [<c016ddfc>] lr : [<c016ddfc>] psr: 600d0013
[ 296.959411] sp : cf349d30 ip : 00000000 fp : c053aeec
[ 296.964935] r10: c0c6abe0 r9 : c0cd90d4 r8 : cf3c85bc
[ 296.970458] r7 : 00000000 r6 : cf349d8c r5 : 0000000c r4 : cf349d40
[ 296.977355] r3 : 0000000c r2 : de2a7300 r1 : 00000000 r0 : 0000000c
[ 296.984283] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none
[ 296.991851] Control: 10c5387d Table: 8f36c019 DAC: 00000051
[ 296.997924] Process rtcwake (pid: 1410, stack limit = 0x426df07e)
[ 297.004364] Stack: (0xcf349d30 to 0xcf34a000)
[ 297.009002] 9d20: cf349d40 c016e0f8 c0c03f48 c07e1bc4
[ 297.017669] 9d40: 00000000 b3f91946 0000000c cf349d8c 00000000 bf03d2cc cf3c8400 fffffff8
[ 297.026336] 9d60: 00000000 cf349d8c cf3c85bc bf03d394 cf3c8400 ffffffea c0c03f48 cf3c8400
[ 297.035003] 9d80: bf2d4a38 bf280d54 600d0013 de2a7300 00000477 00000001 00000000 00000000
[ 297.043670] 9da0: cf3c8508 cf3c8508 00000000 b3f91946 00000000 cf3c8400 cf3c8400 bf2d4a38
[ 297.052337] 9dc0: 00000002 bf28406c dc65a810 dc65a800 bf2d4a38 bf2d4a50 bf2d4a38 dc65a810
[ 297.061004] 9de0: bf2d4a38 c0539380 dc65a810 c0c03f48 00000001 c053abec c0979824 b3f91946
[ 297.069671] 9e00: 00000000 00000000 c0cd90d4 dc65a810 dc65a890 00000002 c0c6abc4 c053adf4
[ 297.078338] 9e20: 00000002 c0ca40c0 00000000 c0cad048 c0cd90d4 c0c03f48 00000003 c0c03f48
[ 297.087005] 9e40: c0ca404c 00000000 be828c7b c0172dbc 00000003 00000003 c0c04370 b3f91946
[ 297.095672] 9e60: 00000000 c0cd90d4 c0c03f48 00000003 c0ca404c c0cad05c 00000004 c0173330
[ 297.104339] 9e80: 00000006 b3f91946 00000003 00000003 00000004 cf42b900 c0925847 c0171d28
[ 297.113006] 9ea0: 00000004 cf31a880 cf42b900 cf349f70 cf31a890 00000051 00000004 c02caa60
[ 297.121673] 9ec0: 00000000 00000000 00000004 c0c03f48 00000004 00000000 b6f00000 c02ca91c
[ 297.130340] 9ee0: b6f00000 c0255f38 000b6f00 b6f00000 cf36edb8 cf36edb8 00000000 00000000
[ 297.139007] 9f00: 00000000 00000000 cf512400 dfbdb254 00000000 b3f91946 c0c03f48 cf349fb0
[ 297.147674] 9f20: de27e840 c03ca134 c09b9abc de27e840 00000002 b6f00000 cf349f70 b3f91946
[ 297.156341] 9f40: de27e840 00000004 00000000 b6f00000 cf349f70 c02573b4 de27e840 b6f00000
[ 297.165008] 9f60: cf349f70 c0c03f48 cf349f7c c025753c 00000000 00000000 00000003 de27e840
[ 297.173675] 9f80: 00000000 b3f91946 00000004 b6f00000 000260d0 00000004 c0101204 cf348000
[ 297.182342] 9fa0: 00000004 c0101000 00000004 b6f00000 00000004 b6f00000 00000004 00000000
[ 297.191009] 9fc0: 00000004 b6f00000 000260d0 00000004 00000004 00000000 00013978 be828c7b
[ 297.199676] 9fe0: 00000000 be828b7c b6e3ec3d b6e77cf6 400d0030 00000004 00000000 00000000
[ 297.208374] [<c016ddfc>] (atomic_cmpxchg_relaxed) from [<c016e0f8>] (atomic_try_cmpxchg_acquire.constprop.12+0x10/0x28)
[ 297.219787] [<c016e0f8>] (atomic_try_cmpxchg_acquire.constprop.12) from [<c07e1bc4>] (ww_mutex_lock+0x38/0x74)
[ 297.230804] [<c07e1bc4>] (ww_mutex_lock) from [<bf03d2cc>] (modeset_lock+0xe4/0xf4 [drm])
[ 297.240173] [<bf03d2cc>] (modeset_lock [drm]) from [<bf03d394>] (drm_modeset_lock_all_ctx+0x38/0xb4 [drm])
[ 297.250976] [<bf03d394>] (drm_modeset_lock_all_ctx [drm]) from [<bf280d54>] (drm_atomic_helper_suspend+0x34/0xc8 [drm_kms_helper])
[ 297.263641] [<bf280d54>] (drm_atomic_helper_suspend [drm_kms_helper]) from [<bf28406c>] (drm_mode_config_helper_suspend+0x28/0x5c [drm_kms_helper])
[ 297.278106] [<bf28406c>] (drm_mode_config_helper_suspend [drm_kms_helper]) from [<bf2d4a50>] (pvr_suspend+0x18/0x48 [pvrsrvkm_omap3630_sgx530_125])
[ 297.292510] [<bf2d4a50>] (pvr_suspend [pvrsrvkm_omap3630_sgx530_125]) from [<c0539380>] (dpm_run_callback+0x28/0x54)
[ 297.303771] [<c0539380>] (dpm_run_callback) from [<c053abec>] (__device_suspend_noirq+0xec/0x258)
[ 297.313232] [<c053abec>] (__device_suspend_noirq) from [<c053adf4>] (dpm_suspend_noirq+0x9c/0x194)
[ 297.322814] [<c053adf4>] (dpm_suspend_noirq) from [<c0172dbc>] (suspend_devices_and_enter+0x168/0x504)
[ 297.332672] [<c0172dbc>] (suspend_devices_and_enter) from [<c0173330>] (pm_suspend+0x1d8/0x270)
[ 297.341888] [<c0173330>] (pm_suspend) from [<c0171d28>] (state_store+0x9c/0xcc)
[ 297.349670] [<c0171d28>] (state_store) from [<c02caa60>] (kernfs_fop_write+0x144/0x1b0)
[ 297.358154] [<c02caa60>] (kernfs_fop_write) from [<c0255f38>] (__vfs_write+0x28/0xe0)
[ 297.366485] [<c0255f38>] (__vfs_write) from [<c02573b4>] (vfs_write+0x98/0xbc)
[ 297.374145] [<c02573b4>] (vfs_write) from [<c025753c>] (ksys_write+0x68/0xb4)
[ 297.381713] [<c025753c>] (ksys_write) from [<c0101000>] (ret_fast_syscall+0x0/0x54)
[ 297.389801] Exception stack(0xcf349fa8 to 0xcf349ff0)
[ 297.395172] 9fa0: 00000004 b6f00000 00000004 b6f00000 00000004 00000000
[ 297.403839] 9fc0: 00000004 b6f00000 000260d0 00000004 00000004 00000000 00013978 be828c7b
[ 297.412506] 9fe0: 00000000 be828b7c b6e3ec3d b6e77cf6
[ 297.417877] Code: e12fff1e e92d4010 e1a03000 ebfffffa (e1930f9f)
[ 297.424743] ---[ end trace d4a3f2367acac9b8 ]---
Regards,
Andreas
More information about the openpvrsgx-devgroup
mailing list