Revision c0fd99d659ba5582e09625c7a985d63fc2ca74b5 authored by Marek Szyprowski on 20 February 2020, 12:30:12 UTC, committed by Inki Dae on 02 March 2020, 04:02:34 UTC
Writing to the built-in strings arrays doesn't work if driver is loaded as kernel module. This is also considered as a bad pattern. Fix this by adding a call to clk_get() with legacy clock name. This fixes following kernel oops if driver is loaded as module: Unable to handle kernel paging request at virtual address bf047978 pgd = (ptrval) [bf047978] *pgd=59344811, *pte=5903c6df, *ppte=5903c65f Internal error: Oops: 80f [#1] SMP ARM Modules linked in: mc exynosdrm(+) analogix_dp rtc_s3c exynos_ppmu i2c_gpio CPU: 1 PID: 212 Comm: systemd-udevd Not tainted 5.6.0-rc2-next-20200219 #326 videodev: Linux video capture interface: v2.00 Hardware name: Samsung Exynos (Flattened Device Tree) PC is at exynos_dsi_probe+0x1f0/0x384 [exynosdrm] LR is at exynos_dsi_probe+0x1dc/0x384 [exynosdrm] ... Process systemd-udevd (pid: 212, stack limit = 0x(ptrval)) ... [<bf03cf14>] (exynos_dsi_probe [exynosdrm]) from [<c09b1ca0>] (platform_drv_probe+0x6c/0xa4) [<c09b1ca0>] (platform_drv_probe) from [<c09afcb8>] (really_probe+0x210/0x350) [<c09afcb8>] (really_probe) from [<c09aff74>] (driver_probe_device+0x60/0x1a0) [<c09aff74>] (driver_probe_device) from [<c09b0254>] (device_driver_attach+0x58/0x60) [<c09b0254>] (device_driver_attach) from [<c09b02dc>] (__driver_attach+0x80/0xbc) [<c09b02dc>] (__driver_attach) from [<c09ade00>] (bus_for_each_dev+0x68/0xb4) [<c09ade00>] (bus_for_each_dev) from [<c09aefd8>] (bus_add_driver+0x130/0x1e8) [<c09aefd8>] (bus_add_driver) from [<c09b0d64>] (driver_register+0x78/0x110) [<c09b0d64>] (driver_register) from [<bf038558>] (exynos_drm_init+0xe8/0x11c [exynosdrm]) [<bf038558>] (exynos_drm_init [exynosdrm]) from [<c0302fa8>] (do_one_initcall+0x50/0x220) [<c0302fa8>] (do_one_initcall) from [<c03dd02c>] (do_init_module+0x60/0x210) [<c03dd02c>] (do_init_module) from [<c03dbf44>] (load_module+0x1c0c/0x2310) [<c03dbf44>] (load_module) from [<c03dc85c>] (sys_finit_module+0xac/0xbc) [<c03dc85c>] (sys_finit_module) from [<c0301000>] (ret_fast_syscall+0x0/0x54) Exception stack(0xd979bfa8 to 0xd979bff0) ... ---[ end trace db16efe05faab470 ]--- Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Reviewed-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
1 parent 0a9d1e3
File | Mode | Size |
---|---|---|
atomic | ||
basic | ||
coccinelle | ||
dtc | ||
gcc-plugins | ||
gdb | ||
genksyms | ||
kconfig | ||
ksymoops | ||
mod | ||
package | ||
selinux | ||
tracing | ||
.gitignore | -rw-r--r-- | 121 bytes |
Kbuild.include | -rw-r--r-- | 12.2 KB |
Kconfig.include | -rw-r--r-- | 1.5 KB |
Lindent | -rwxr-xr-x | 502 bytes |
Makefile | -rw-r--r-- | 1.4 KB |
Makefile.asm-generic | -rw-r--r-- | 1.8 KB |
Makefile.build | -rw-r--r-- | 17.3 KB |
Makefile.clean | -rw-r--r-- | 2.2 KB |
Makefile.dtbinst | -rw-r--r-- | 1.1 KB |
Makefile.extrawarn | -rw-r--r-- | 2.6 KB |
Makefile.gcc-plugins | -rw-r--r-- | 2.4 KB |
Makefile.headersinst | -rw-r--r-- | 2.9 KB |
Makefile.host | -rw-r--r-- | 6.8 KB |
Makefile.kasan | -rw-r--r-- | 1.4 KB |
Makefile.kcov | -rw-r--r-- | 359 bytes |
Makefile.lib | -rw-r--r-- | 14.9 KB |
Makefile.modfinal | -rw-r--r-- | 1.8 KB |
Makefile.modinst | -rw-r--r-- | 1.1 KB |
Makefile.modpost | -rw-r--r-- | 3.2 KB |
Makefile.modsign | -rw-r--r-- | 791 bytes |
Makefile.package | -rw-r--r-- | 6.6 KB |
Makefile.ubsan | -rw-r--r-- | 864 bytes |
adjust_autoksyms.sh | -rwxr-xr-x | 2.6 KB |
asn1_compiler.c | -rw-r--r-- | 35.3 KB |
bin2c.c | -rw-r--r-- | 743 bytes |
bloat-o-meter | -rwxr-xr-x | 3.3 KB |
bootgraph.pl | -rwxr-xr-x | 5.6 KB |
bpf_helpers_doc.py | -rwxr-xr-x | 20.0 KB |
cc-can-link.sh | -rwxr-xr-x | 166 bytes |
check_extable.sh | -rwxr-xr-x | 4.9 KB |
checkincludes.pl | -rwxr-xr-x | 1.9 KB |
checkkconfigsymbols.py | -rwxr-xr-x | 15.5 KB |
checkpatch.pl | -rwxr-xr-x | 199.8 KB |
checkstack.pl | -rwxr-xr-x | 5.3 KB |
checksyscalls.sh | -rwxr-xr-x | 7.3 KB |
checkversion.pl | -rwxr-xr-x | 1.9 KB |
clang-version.sh | -rwxr-xr-x | 527 bytes |
cleanfile | -rwxr-xr-x | 3.5 KB |
cleanpatch | -rwxr-xr-x | 5.1 KB |
coccicheck | -rwxr-xr-x | 7.2 KB |
config | -rwxr-xr-x | 4.5 KB |
const_structs.checkpatch | -rw-r--r-- | 964 bytes |
decode_stacktrace.sh | -rwxr-xr-x | 3.9 KB |
decodecode | -rwxr-xr-x | 2.6 KB |
depmod.sh | -rwxr-xr-x | 1.3 KB |
diffconfig | -rwxr-xr-x | 3.7 KB |
documentation-file-ref-check | -rwxr-xr-x | 5.4 KB |
export_report.pl | -rwxr-xr-x | 4.5 KB |
extract-cert.c | -rw-r--r-- | 3.5 KB |
extract-ikconfig | -rwxr-xr-x | 1.7 KB |
extract-module-sig.pl | -rwxr-xr-x | 3.7 KB |
extract-sys-certs.pl | -rwxr-xr-x | 3.7 KB |
extract-vmlinux | -rwxr-xr-x | 1.7 KB |
extract_xc3028.pl | -rwxr-xr-x | 44.6 KB |
faddr2line | -rwxr-xr-x | 6.2 KB |
file-size.sh | -rwxr-xr-x | 86 bytes |
find-unused-docs.sh | -rwxr-xr-x | 1.3 KB |
gcc-goto.sh | -rwxr-xr-x | 511 bytes |
gcc-ld | -rwxr-xr-x | 711 bytes |
gcc-plugin.sh | -rwxr-xr-x | 1.1 KB |
gcc-version.sh | -rwxr-xr-x | 588 bytes |
gcc-x86_32-has-stack-protector.sh | -rwxr-xr-x | 173 bytes |
gcc-x86_64-has-stack-protector.sh | -rwxr-xr-x | 198 bytes |
gen_compile_commands.py | -rwxr-xr-x | 5.6 KB |
gen_ksymdeps.sh | -rwxr-xr-x | 399 bytes |
get_abi.pl | -rwxr-xr-x | 10.1 KB |
get_dvb_firmware | -rwxr-xr-x | 24.5 KB |
get_maintainer.pl | -rwxr-xr-x | 66.6 KB |
gfp-translate | -rwxr-xr-x | 1.7 KB |
headerdep.pl | -rwxr-xr-x | 3.5 KB |
headers_check.pl | -rwxr-xr-x | 3.7 KB |
headers_install.sh | -rwxr-xr-x | 3.6 KB |
insert-sys-cert.c | -rw-r--r-- | 8.9 KB |
jobserver-exec | -rwxr-xr-x | 2.2 KB |
kallsyms.c | -rw-r--r-- | 17.4 KB |
kernel-doc | -rwxr-xr-x | 61.4 KB |
ld-version.sh | -rwxr-xr-x | 269 bytes |
leaking_addresses.pl | -rwxr-xr-x | 12.8 KB |
link-vmlinux.sh | -rwxr-xr-x | 8.0 KB |
makelst | -rwxr-xr-x | 808 bytes |
markup_oops.pl | -rwxr-xr-x | 7.9 KB |
mkcompile_h | -rwxr-xr-x | 2.5 KB |
mkmakefile | -rwxr-xr-x | 426 bytes |
mksysmap | -rwxr-xr-x | 1.3 KB |
mkuboot.sh | -rwxr-xr-x | 414 bytes |
module-common.lds | -rw-r--r-- | 901 bytes |
modules-check.sh | -rwxr-xr-x | 303 bytes |
namespace.pl | -rwxr-xr-x | 13.2 KB |
nsdeps | -rw-r--r-- | 1.9 KB |
objdiff | -rwxr-xr-x | 2.8 KB |
parse-maintainers.pl | -rw-r--r-- | 3.7 KB |
patch-kernel | -rwxr-xr-x | 9.9 KB |
profile2linkerlist.pl | -rwxr-xr-x | 414 bytes |
prune-kernel | -rwxr-xr-x | 708 bytes |
recordmcount.c | -rw-r--r-- | 16.5 KB |
recordmcount.h | -rw-r--r-- | 17.1 KB |
recordmcount.pl | -rwxr-xr-x | 18.8 KB |
setlocalversion | -rwxr-xr-x | 4.3 KB |
show_delta | -rwxr-xr-x | 3.0 KB |
sign-file.c | -rw-r--r-- | 9.8 KB |
sorttable.c | -rw-r--r-- | 7.5 KB |
sorttable.h | -rw-r--r-- | 9.7 KB |
spdxcheck-test.sh | -rw-r--r-- | 323 bytes |
spdxcheck.py | -rwxr-xr-x | 9.9 KB |
spelling.txt | -rw-r--r-- | 29.6 KB |
sphinx-pre-install | -rwxr-xr-x | 17.9 KB |
split-man.pl | -rwxr-xr-x | 600 bytes |
stackdelta | -rwxr-xr-x | 1.8 KB |
stackusage | -rwxr-xr-x | 794 bytes |
subarch.include | -rw-r--r-- | 641 bytes |
tags.sh | -rwxr-xr-x | 9.3 KB |
tools-support-relr.sh | -rwxr-xr-x | 518 bytes |
unifdef.c | -rw-r--r-- | 34.8 KB |
ver_linux | -rwxr-xr-x | 2.8 KB |
xen-hypercalls.sh | -rw-r--r-- | 386 bytes |
xz_wrap.sh | -rwxr-xr-x | 562 bytes |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...