summaryrefslogtreecommitdiff
path: root/arch/arm/mach-rpc
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert@linux-m68k.org>2013-07-26 00:08:25 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-08-20 08:21:01 -0700
commit3fa539e24c5d7077791a1d6bd8bb28bf86bef932 (patch)
treee9c5fe6a1115c663b31c300512eba0357e33b87b /arch/arm/mach-rpc
parentfc1e43e5cbee9f14ee940044d0e4e722370009d2 (diff)
m68k/atari: ARAnyM - Fix NatFeat module support
commit e8184e10f89736a23ea6eea8e24cd524c5c513d2 upstream. As pointed out by Andreas Schwab, pointers passed to ARAnyM NatFeat calls should be physical addresses, not virtual addresses. Fortunately on Atari, physical and virtual kernel addresses are the same, as long as normal kernel memory is concerned, so this usually worked fine without conversion. But for modules, pointers to literal strings are located in vmalloc()ed memory. Depending on the version of ARAnyM, this causes the nf_get_id() call to just fail, or worse, crash ARAnyM itself with e.g. Gotcha! Illegal memory access. Atari PC = $968c This is a big issue for distro kernels, who want to have all drivers as loadable modules in an initrd. Add a wrapper for nf_get_id() that copies the literal to the stack to work around this issue. Reported-by: Thorsten Glaser <tg@debian.org> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/arm/mach-rpc')
0 files changed, 0 insertions, 0 deletions