Subject: [linux-sunxi] [PATCH v3 30/30] ARM: sun8i: a83t: full range OPP tables and CPUfreq

From: [email-masked] (Philipp Rossak)
Date: Thu, 30 Aug 2018 22:29:48 +0200

On 30.08.2018 18:38, Ond?ej Jirman wrote:
> Hello,
> 
> On Thu, Aug 30, 2018 at 05:45:18PM +0200, Philipp Rossak wrote:
>> Since we have now thermal trotteling enabeled we can now add the full
>> range of the OPP table.
> 
> I'm not sure we can. I have a tablet with A83T SoC and it gets unstable
> at these frequencies even with thermal throttling on mainline kernel. (Though
> I have my own THS driver, but I doubt a different driver will change much.)
> 
> There might be some other issue left in the cpufreq code. I'll let others
> test this on a better cooled boards though.
> 
> Did you/someone test this?
> 
> regards,
>    o.
I have a good cooled device, with big heatsinks and a fan blowing 
directly on it. But there is some big issue left!

cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq
[   85.076270] Unable to handle kernel paging request at virtual address 
2e83c684
[   85.083519] pgd = (ptrval)
[   85.086220] [2e83c684] *pgd=00000000
[   85.089813] Internal error: Oops: 5 [#3] SMP ARM
[   85.094429] Modules linked in:
[   85.097483] CPU: 4 PID: 127 Comm: sh Tainted: G      D W 
4.18.0-00031-g8f59917020b9-dirty #2
[   85.106597] Hardware name: Allwinner A83t board
[   85.111130] PC is at down_write+0x14/0x54
[   85.115135] LR is at anon_vma_clone+0x9c/0x1e4
[   85.119571] pc : [<c066a3d4>]    lr : [<c01e71b8>]    psr: 60000013
[   85.125826] sp : ede45e70  ip : 000001a0  fp : eea3c690
[   85.131041] r10: eea4193c  r9 : 00400200  r8 : c0a942a4
[   85.136255] r7 : 2e83c680  r6 : eea3aea0  r5 : eea3b220  r4 : 2e83c684
[   85.142771] r3 : ffff0001  r2 : 2e83c680  r1 : ede45e58  r0 : 2e83c684
[   85.149287] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM 
Segment none
[   85.156410] Control: 10c5387d  Table: 6df1806a  DAC: 00000051
[   85.162145] Process sh (pid: 127, stack limit = 0x(ptrval))
[   85.167706] Stack: (0xede45e70 to 0xede46000)
[   85.172057] 5e60:                                     eea3b900 
c01e71b8 eea41900 ffebd684
[   85.180221] 5e80: c0a637b0 c07ea07c c0a10754 eea3aea0 eea41900 
c0a04c48 edd71880 00000000
[   85.188385] 5ea0: eea3aea0 eea41900 c0a69030 c01e7324 00000002 
edd701c0 c0a04c48 edd71880
[   85.196548] 5ec0: 00000000 c011c2f4 00000069 00000000 00000002 
00000000 00000000 00000000
[   85.204711] 5ee0: 00000000 edd701c0 edd82280 eea3af00 edd701f8 
edd718b8 eea3af08 eea3af14
[   85.212875] 5f00: eea3af10 ede44000 edd8255c 01200011 00000000 
ede45f14 ede45f14 b61ea11a
[   85.221039] 5f20: edd805c0 01200011 c0a04c48 beef38b0 00000000 
00000000 00000000 00000078
[   85.229202] 5f40: beef38dc c011ce0c 00000000 00000000 00000000 
ede44000 000000ae c012d9e0
[   85.237365] 5f60: eea43480 00000000 04000000 b61ea11a 00000000 
b6fb5068 b6f8b670 beef38b0
[   85.245529] 5f80: 00000078 c0101204 ede44000 00000078 beef38dc 
c011d1bc b6fb5068 00000000
[   85.253692] 5fa0: 000000ae c0101000 b6fb5068 b6f8b670 01200011 
00000000 00000000 00000000
[   85.261856] 5fc0: b6fb5068 b6f8b670 beef38b0 00000078 b6f8ac4c 
b6fb5490 ffffffff beef38dc
[   85.270020] 5fe0: 00000002 beef38b0 00000000 b6f5bfd0 60000010 
01200011 00000000 00000000
[   85.278191] [<c066a3d4>] (down_write) from [<c01e71b8>] 
(anon_vma_clone+0x9c/0x1e4)
[   85.285836] [<c01e71b8>] (anon_vma_clone) from [<c01e7324>] 
(anon_vma_fork+0x24/0x160)
[   85.293741] [<c01e7324>] (anon_vma_fork) from [<c011c2f4>] 
(copy_process.part.3+0xbc4/0x158c)
[   85.302253] [<c011c2f4>] (copy_process.part.3) from [<c011ce0c>] 
(_do_fork+0xb0/0x394)
[   85.310157] [<c011ce0c>] (_do_fork) from [<c011d1bc>] 
(sys_clone+0x20/0x28)
[   85.317107] [<c011d1bc>] (sys_clone) from [<c0101000>] 
(ret_fast_syscall+0x0/0x54)
[   85.324661] Exception stack(0xede45fa8 to 0xede45ff0)
[   85.329704] 5fa0:                   b6fb5068 b6f8b670 01200011 
00000000 00000000 00000000
[   85.337868] 5fc0: b6fb5068 b6f8b670 beef38b0 00000078 b6f8ac4c 
b6fb5490 ffffffff beef38dc
[   85.346021] 5fe0: 00000002 beef38b0 00000000 b6f5bfd0
[   85.351068] Code: e1a04000 f590f000 e3a03001 e34f3fff (e1902f9f)
[   85.357200] ---[ end trace aad10e0b4fcbf194 ]---

OR

cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
[   73.873939] ------------[ cut here ]------------
[   73.878584] WARNING: CPU: 5 PID: 132 at mm/rmap.c:235 
unlink_anon_vmas+0x1f4/0x1fc
[   73.886210] Modules linked in:
[   73.889276] CPU: 5 PID: 132 Comm: sh Tainted: G      D 
4.18.0-00031-g8f59917020b9-dirty #2
[   73.898391] Hardware name: Allwinner A83t board
[   73.902934] [<c010f310>] (unwind_backtrace) from [<c010bd54>] 
(show_stack+0x10/0x14)
[   73.910671] [<c010bd54>] (show_stack) from [<c0652f98>] 
(dump_stack+0x84/0x98)
[   73.917887] [<c0652f98>] (dump_stack) from [<c011dd14>] 
(__warn+0xfc/0x114)
[   73.924840] [<c011dd14>] (__warn) from [<c011de44>] 
(warn_slowpath_null+0x40/0x48)
[   73.932398] [<c011de44>] (warn_slowpath_null) from [<c01e7114>] 
(unlink_anon_vmas+0x1f4/0x1fc)
[   73.941006] [<c01e7114>] (unlink_anon_vmas) from [<c01da874>] 
(free_pgtables+0x78/0xcc)
[   73.948999] [<c01da874>] (free_pgtables) from [<c01e1e88>] 
(exit_mmap+0xe4/0x188)
[   73.956471] [<c01e1e88>] (exit_mmap) from [<c011b3a8>] (mmput+0x40/0xf0)
[   73.963169] [<c011b3a8>] (mmput) from [<c0208f1c>] 
(flush_old_exec+0x550/0x6e0)
[   73.970473] [<c0208f1c>] (flush_old_exec) from [<c0250e74>] 
(load_elf_binary+0x2f0/0x1324)
[   73.978726] [<c0250e74>] (load_elf_binary) from [<c02086c4>] 
(search_binary_handler+0xa0/0x234)
[   73.987412] [<c02086c4>] (search_binary_handler) from [<c02098b0>] 
(__do_execve_file+0x57c/0x6bc)
[   73.996271] [<c02098b0>] (__do_execve_file) from [<c0209c54>] 
(sys_execve+0x34/0x3c)
[   74.004003] [<c0209c54>] (sys_execve) from [<c0101000>] 
(ret_fast_syscall+0x0/0x54)
[   74.011645] Exception stack(0xede71fa8 to 0xede71ff0)
[   74.016690] 1fa0:                   000c530c 000c52d0 000c530c 
000c52d0 000c52dc 00000000
[   74.024853] 1fc0: 000c530c 000c52d0 000a2a0c 0000000b 000c52dc 
000c4b5c 000c4b5c 000c530c
[   74.033016] 1fe0: b6f25ed4 beef38b8 00042038 b6f25ee0
[   74.038086] ---[ end trace aad10e0b4fcbf192 ]---
[   74.042726] Unable to handle kernel paging request at virtual address 
2e83c684
[   74.049958] pgd = (ptrval)
[   74.052665] [2e83c684] *pgd=00000000
[   74.056243] Internal error: Oops: 5 [#2] SMP ARM
[   74.060851] Modules linked in:
[   74.063904] CPU: 5 PID: 132 Comm: sh Tainted: G      D W 
4.18.0-00031-g8f59917020b9-dirty #2
[   74.073019] Hardware name: Allwinner A83t board
[   74.077548] PC is at down_write+0x14/0x54
[   74.081553] LR is at unlink_anon_vmas+0xa8/0x1fc
[   74.086160] pc : [<c066a3d4>]    lr : [<c01e6fc8>]    psr: 60000013
[   74.092416] sp : ede71d88  ip : 00000000  fp : eea3b680
[   74.097630] r10: eea3c690  r9 : c0a637b0  r8 : eea41e40
[   74.102845] r7 : c0a942a4  r6 : 2e83c680  r5 : eea41e7c  r4 : 2e83c684
[   74.109360] r3 : ffff0001  r2 : ffff0001  r1 : 00000000  r0 : 2e83c684
[   74.115878] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM 
Segment none
[   74.123000] Control: 10c5387d  Table: 6de6406a  DAC: 00000051
[   74.128735] Process sh (pid: 132, stack limit = 0x(ptrval))
[   74.134296] Stack: (0xede71d88 to 0xede72000)
[   74.138645] 1d80:                   eea41e74 c01e6fc8 c07ea07c 
eea3c690 eea41f00 eea41e40
[   74.146809] 1da0: eea41d20 b6f17000 ede71df4 00002000 00000000 
edd9c300 ede71e90 c01da874
[   74.154973] 1dc0: b6f17000 c01dbf94 00000000 eea41360 00000000 
c0a04c48 edd716c0 edd826b0
[   74.163136] 1de0: edd90540 c01e1e88 eeabc6c8 00000001 00000000 
edd716c0 00000001 00000000
[   74.171299] 1e00: 00000000 ffffffff c0a68f40 00000000 000000ac 
00000400 eeacf000 eeb9f038
[   74.179463] 1e20: 00000100 b61ea11a 00000000 edd716c0 00000000 
edda8540 edd716c0 b61ea11a
[   74.187627] 1e40: edd716c0 00000000 edda8540 c011b3a8 edd716c0 
edd82280 edda8540 c0208f1c
[   74.195790] 1e60: 000000a0 c024f610 000000d4 c0a04c48 eeab4100 
00000000 edd9c300 eeab4134
[   74.203954] 1e80: eeabc6c0 edd9c400 ede71e90 c0250e74 effcec80 
effcec80 00000001 eeabc6c0
[   74.212118] 1ea0: eeaab180 eeabb000 00000000 c01d9704 effcec80 
80000013 beffff22 00000000
[   74.220281] 1ec0: ede70000 effcec80 edd9c300 c01d9344 00000000 
00000004 beffff22 00000000
[   74.228445] 1ee0: 00000034 00000000 00000011 ede71f20 00000000 
00000000 00000051 b61ea11a
[   74.236609] 1f00: befff000 c0a1130c edd9c300 c0a9558c fffffff8 
c0a10e3c c0a9558c c07ebbb4
[   74.244772] 1f20: 00000001 c02086c4 c0a0bbd4 c0a04c48 edda2000 
ffffe000 00000084 edd9c300
[   74.252936] 1f40: 00000001 00000000 00000000 c02098b0 c0a04f34 
edda8540 eeab8de0 edda8578
[   74.261100] 1f60: 00000000 b61ea11a 000c530c 000c52d0 000c52dc 
000a2a0c 0000000b c0101204
[   74.269263] 1f80: ede70000 0000000b 000c530c c0209c54 00000000 
00000000 20000010 000c530c
[   74.277428] 1fa0: 000c52d0 c0101000 000c530c 000c52d0 000c530c 
000c52d0 000c52dc 00000000
[   74.285592] 1fc0: 000c530c 000c52d0 000a2a0c 0000000b 000c52dc 
000c4b5c 000c4b5c 000c530c
[   74.293755] 1fe0: b6f25ed4 beef38b8 00042038 b6f25ee0 a0000010 
000c530c 00000000 00000000
[   74.301924] [<c066a3d4>] (down_write) from [<c01e6fc8>] 
(unlink_anon_vmas+0xa8/0x1fc)
[   74.309743] [<c01e6fc8>] (unlink_anon_vmas) from [<c01da874>] 
(free_pgtables+0x78/0xcc)
[   74.317733] [<c01da874>] (free_pgtables) from [<c01e1e88>] 
(exit_mmap+0xe4/0x188)
[   74.325204] [<c01e1e88>] (exit_mmap) from [<c011b3a8>] (mmput+0x40/0xf0)
[   74.331898] [<c011b3a8>] (mmput) from [<c0208f1c>] 
(flush_old_exec+0x550/0x6e0)
[   74.339195] [<c0208f1c>] (flush_old_exec) from [<c0250e74>] 
(load_elf_binary+0x2f0/0x1324)
[   74.347447] [<c0250e74>] (load_elf_binary) from [<c02086c4>] 
(search_binary_handler+0xa0/0x234)
[   74.356134] [<c02086c4>] (search_binary_handler) from [<c02098b0>] 
(__do_execve_file+0x57c/0x6bc)
[   74.364993] [<c02098b0>] (__do_execve_file) from [<c0209c54>] 
(sys_execve+0x34/0x3c)
[   74.372724] [<c0209c54>] (sys_execve) from [<c0101000>] 
(ret_fast_syscall+0x0/0x54)
[   74.380365] Exception stack(0xede71fa8 to 0xede71ff0)
[   74.385407] 1fa0:                   000c530c 000c52d0 000c530c 
000c52d0 000c52dc 00000000
[   74.393571] 1fc0: 000c530c 000c52d0 000a2a0c 0000000b 000c52dc 
000c4b5c 000c4b5c 000c530c
[   74.401733] 1fe0: b6f25ed4 beef38b8 00042038 b6f25ee0
[   74.406778] Code: e1a04000 f590f000 e3a03001 e34f3fff (e1902f9f)
[   74.412895] ---[ end trace aad10e0b4fcbf193 ]---

I think I will drop this patch until this issue is fixed.

Philipp