android_kernel_google_msm/arch/m68k
Geert Uytterhoeven dadf2af132 m68k/atari: ARAnyM - Fix NatFeat module support
commit e8184e10f8 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>
2013-08-20 08:26:29 -07:00
..
amiga Disintegrate asm/system.h for M68K 2012-03-28 18:30:02 +01:00
apollo Disintegrate asm/system.h for M68K 2012-03-28 18:30:02 +01:00
atari Disintegrate asm/system.h for M68K 2012-03-28 18:30:02 +01:00
bvme6000 Disintegrate asm/system.h for M68K 2012-03-28 18:30:02 +01:00
configs m68knommu: make sure 2nd FEC eth interface pins are enabled on 5275 ColdFire 2012-04-17 17:06:34 +10:00
emu m68k/atari: ARAnyM - Fix NatFeat module support 2013-08-20 08:26:29 -07:00
fpsp040 Fix common misspellings 2011-03-31 11:26:23 -03:00
hp300 Disintegrate asm/system.h for M68K 2012-03-28 18:30:02 +01:00
ifpsp060 Fix common misspellings 2011-03-31 11:26:23 -03:00
include/asm m68k: Truncate base in do_div() 2013-08-20 08:26:29 -07:00
kernel m68k/mac: Fix unexpected interrupt with CONFIG_EARLY_PRINTK 2013-06-07 12:49:34 -07:00
lib m68k: modify user space access functions to support ColdFire CPUs 2011-12-30 10:20:21 +10:00
mac m68k/mac: Add missing platform check before registering platform devices 2012-04-01 22:57:51 +02:00
math-emu m68k/math-emu: Remove unnecessary code 2011-07-30 21:21:40 +02:00
mm Disintegrate asm/system.h for M68K 2012-03-28 18:30:02 +01:00
mvme16x Disintegrate asm/system.h for M68K 2012-03-28 18:30:02 +01:00
mvme147 Disintegrate asm/system.h for M68K 2012-03-28 18:30:02 +01:00
platform m68knommu: enable qspi support when SPI_COLDFIRE_QSPI = m 2012-05-08 13:06:51 +10:00
q40 m68k/q40: Add missing platform check before registering platform devices 2012-04-01 22:57:53 +02:00
sun3 Disintegrate asm/system.h for M68K 2012-03-28 18:30:02 +01:00
sun3x Disintegrate asm/system.h for M68K 2012-03-28 18:30:02 +01:00
tools/amiga
install.sh
Kconfig m68k: make support for FPU hardware configurable 2012-03-05 09:43:05 +10:00
Kconfig.bus m68k: Revive lost DIO bus config option 2011-11-08 22:35:46 +01:00
Kconfig.cpu m68k: allow ColdFire 547x and 548x CPUs to be built with MMU enabled 2011-12-30 10:20:50 +10:00
Kconfig.debug Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k 2012-01-06 18:28:12 -08:00
Kconfig.devices m68k/mac: Make CONFIG_HEARTBEAT unavailable on Mac 2012-01-04 22:23:50 +01:00
Kconfig.machine m68k/Kconfig: Separate classic m68k and coldfire early 2011-12-30 10:20:49 +10:00
Makefile m68k: merge mmu and non-mmu arch Makefiles 2011-10-18 14:22:25 +10:00