Re: [PATCH RFC/RFT 00/12] clk: samsung: Use platform_driver_probe() to avoid __refdata
From: André Draszik
Date: Fri Mar 07 2025 - 09:29:31 EST
Hi Krzysztof,
Nice idea!
On Wed, 2025-03-05 at 22:43 +0100, Krzysztof Kozlowski wrote:
> RFT/RFC because testing needed. I tried to do the same on exynos5-subcmu
> and it caused weird oopses which even KASAN did not narrow. Probably
> because of multiple exynos5-subcmu devices?
I've tried this on top of next-20250225, and it doesn't work on gs101
either and OOPSes several times during boot in different places, but
I can not dig deeper right now.
[ 11.502919][ T58] Unable to handle kernel paging request at virtual address ffffbfe2ab25cc30
[ 11.503128][ T58] Mem abort info:
[ 11.503202][ T58] ESR = 0x0000000096000007
[ 11.503295][ T58] EC = 0x25: DABT (current EL), IL = 32 bits
[ 11.503419][ T58] SET = 0, FnV = 0
[ 11.503498][ T58] EA = 0, S1PTW = 0
[ 11.503579][ T58] FSC = 0x07: level 3 translation fault
[ 11.503695][ T58] Data abort info:
[ 11.503769][ T58] ISV = 0, ISS = 0x00000007, ISS2 = 0x00000000
[ 11.503896][ T58] CM = 0, WnR = 0, TnD = 0, TagAccess = 0
[ 11.504058][ T58] GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[ 11.504288][ T58] swapper pgtable: 4k pages, 48-bit VAs, pgdp=000000008208c000
[ 11.504570][ T58] [ffffbfe2ab25cc30] pgd=0000000000000000, p4d=1000000082a58003, pud=1000000082a59003, pmd=1000000082a5d003,
pte=0000000000000000
[ 11.505079][ T58] Internal error: Oops: 0000000096000007 [#1] PREEMPT SMP
[ 11.505346][ T58] Modules linked in:
[ 11.505495][ T58] CPU: 6 UID: 0 PID: 58 Comm: kworker/u32:1 Tainted: G T 6.14.0-rc4-next-20250225+ #12
[ 11.505902][ T58] Tainted: [T]=RANDSTRUCT
[ 11.506061][ T58] Hardware name: Raven (DT)
[ 11.506230][ T58] Workqueue: events_unbound deferred_probe_work_func
[ 11.506477][ T58] pstate: 20400005 (nzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 11.506768][ T58] pc : __device_attach_driver+0x18/0x254
[ 11.506978][ T58] lr : bus_for_each_drv+0xfc/0x154
[ 11.507168][ T58] sp : ffff8000803abc00
[ 11.507321][ T58] x29: ffff8000803abc10 x28: ffff00ed403363d0 x27: ffff00ed40336400
[ 11.507620][ T58] x26: 0000000000000000 x25: ffff00ed4002380d x24: ffff00ed40028000
[ 11.507919][ T58] x23: ffffbfe2aba26000 x22: 0000000000000000 x21: ffff00ed409f8400
[ 11.508219][ T58] x20: ffff8000803abca8 x19: ffffbfe2a9a4cf4c x18: 0000000000000040
[ 11.508518][ T58] x17: 0000000000000001 x16: 0000000000000001 x15: 0000000000000010
[ 11.508817][ T58] x14: 0000000000000010 x13: 0000000000000093 x12: 0000000000000002
[ 11.509117][ T58] x11: ffffffffff6070d2 x10: 0000bef56a420260 x9 : 0000000100000000
[ 11.509416][ T58] x8 : 0000000100000000 x7 : ff7f7f7f7f7f7f7f x6 : 455242436f53531d
[ 11.509715][ T58] x5 : 1d53536f43425245 x4 : 0000000000000000 x3 : e8c6e6e4bec6c65a
[ 11.510015][ T58] x2 : 0000000000000062 x1 : ffff8000803abca8 x0 : ffffbfe2ab25cc28
[ 11.510315][ T58] Call trace:
[ 11.510436][ T58] __device_attach_driver+0x18/0x254 (P)
[ 11.510644][ T58] bus_for_each_drv+0xfc/0x154
[ 11.510819][ T58] __device_attach+0x100/0x1cc
[ 11.510996][ T58] device_initial_probe+0x14/0x20
[ 11.511182][ T58] bus_probe_device+0x94/0x100
[ 11.511359][ T58] deferred_probe_work_func+0xa0/0xfc
[ 11.511558][ T58] process_scheduled_works+0x194/0x2c4
[ 11.511761][ T58] worker_thread+0x28c/0x394
[ 11.511930][ T58] kthread+0x1c0/0x204
[ 11.512081][ T58] ret_from_fork+0x10/0x20
[ 11.512248][ T58] Code: a9017bfd f90013f5 a9034ff4 910043fd (f9400408)
[ 11.512506][ T58] ---[ end trace 0000000000000000 ]---
and
+ udevadm trigger '--action=add'
[ 390.387986][ T394] Unable to handle kernel paging request at virtual address ffffbfe2ab25cc28
[ 390.388207][ T394] Mem abort info:
[ 390.388282][ T394] ESR = 0x0000000096000007
[ 390.388378][ T394] EC = 0x25: DABT (current EL), IL = 32 bits
[ 390.388506][ T394] SET = 0, FnV = 0
[ 390.388586][ T394] EA = 0, S1PTW = 0
[ 390.388669][ T394] FSC = 0x07: level 3 translation fault
[ 390.388787][ T394] Data abort info:
[ 390.388862][ T394] ISV = 0, ISS = 0x00000007, ISS2 = 0x00000000
[ 390.388990][ T394] CM = 0, WnR = 0, TnD = 0, TagAccess = 0
[ 390.389137][ T394] GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[ 390.389367][ T394] swapper pgtable: 4k pages, 48-bit VAs, pgdp=000000008208c000
[ 390.389650][ T394] [ffffbfe2ab25cc28] pgd=0000000000000000, p4d=1000000082a58003, pud=1000000082a59003, pmd=1000000082a5d003,
pte=0000000000000000
[ 390.390173][ T394] Internal error: Oops: 0000000096000007 [#2] PREEMPT SMP
[ 390.390426][ T394] Modules linked in:
[ 390.390580][ T394] CPU: 7 UID: 0 PID: 394 Comm: udevadm Tainted: G D T 6.14.0-rc4-next-20250225+ #12
[ 390.390969][ T394] Tainted: [D]=DIE, [T]=RANDSTRUCT
[ 390.391153][ T394] Hardware name: Raven (DT)
[ 390.391322][ T394] pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 390.391612][ T394] pc : dev_uevent+0x144/0x2d8
[ 390.391785][ T394] lr : kobject_uevent_env+0x1e0/0x3a8
[ 390.391985][ T394] sp : ffff8000810fbb40
[ 390.392137][ T394] x29: ffff8000810fbb60 x28: 0000000000000002 x27: ffffbfe2aa859240
[ 390.392437][ T394] x26: ffffbfe2aae1ca12 x25: 0000000000000000 x24: ffff00ed41167540
[ 390.392736][ T394] x23: ffff00ed41070000 x22: ffff8000810fbbf8 x21: 0000000000000000
[ 390.393035][ T394] x20: ffff00ed41070000 x19: ffff00ed41083010 x18: 0000000000000000
[ 390.393335][ T394] x17: 0000000000000000 x16: 0000000000000000 x15: 0000ffffc7e40360
[ 390.393634][ T394] x14: 00000000ffffffd0 x13: aaaaaaaaaaaaaaaa x12: aaaaaaaaaaaa0000
[ 390.393933][ T394] x11: 0000000000000000 x10: 0000000000000004 x9 : 3bc04d1231e6a100
[ 390.394233][ T394] x8 : ffffbfe2ab25cc28 x7 : 3d4d455453595342 x6 : 4554535953425553
[ 390.394532][ T394] x5 : ffff00ed4107026b x4 : ffffbfe2aae64508 x3 : ffffffffffff0a00
[ 390.394831][ T394] x2 : 0000000000000000 x1 : ffff00ed41070000 x0 : ffff00ed41083010
[ 390.395132][ T394] Call trace:
[ 390.395252][ T394] dev_uevent+0x144/0x2d8 (P)
[ 390.395425][ T394] kobject_uevent_env+0x1e0/0x3a8
[ 390.395610][ T394] kobject_synth_uevent+0x3ec/0x440
[ 390.395802][ T394] uevent_store+0x28/0x64
[ 390.395962][ T394] dev_attr_store+0x18/0x2c
[ 390.396128][ T394] sysfs_kf_write+0x80/0xa0
[ 390.396295][ T394] kernfs_fop_write_iter+0xdc/0x178
[ 390.396488][ T394] vfs_write+0x344/0x3a0
[ 390.396644][ T394] ksys_write+0x7c/0xe8
[ 390.396797][ T394] __arm64_sys_write+0x1c/0x28
[ 390.396973][ T394] invoke_syscall+0x40/0xf8
[ 390.397139][ T394] el0_svc_common+0xac/0xdc
[ 390.397306][ T394] do_el0_svc+0x1c/0x28
[ 390.397459][ T394] el0_svc+0x34/0x9c
[ 390.397602][ T394] el0t_64_sync_handler+0x84/0x108
[ 390.397791][ T394] el0t_64_sync+0x1a4/0x1a8
[ 390.397963][ T394] Code: aa1403e0 94232d4d f9403668 b40000c8 (f9400102)
[ 390.398221][ T394] ---[ end trace 0000000000000000 ]---
Cheers,
Andre'