[PATCH RFC] ARM: option for loading modules into vmalloc area
Russell King - ARM Linux
linux at arm.linux.org.uk
Wed Nov 19 08:49:02 PST 2014
On Wed, Nov 19, 2014 at 11:37:47AM -0500, Nicolas Pitre wrote:
> On Wed, 19 Nov 2014, Russell King - ARM Linux wrote:
> > Which is not a good idea either, because the compiler needs to know how
> > far away its own manually generated literal pool is from the instructions
> > which reference it. The .ltorg statement can end up emitting any number
> > of literals at that point, which makes it indeterminant how many words
> > are contained within the asm() statement.
> > Yes, it isn't desirable to waste an entire data cache line per indirect
> > call like the original quote above, but I don't see a practical
> > alternative.
> Modules could be built without far calls by default, and then the module
> linker would only have to redirect those calls whose destination is too
> far away to a dynamically created trampoline table.
> If I remember correctly you even posted some patches to that effect a
> couple years ago. Maybe those could be salvaged?
I don't think I ever did, because its pretty much impossible to do as I
explained in a follow up to this thread.
We _used_ to do this with the userspace insmod methods, but since we got
this kernel-side linker, it's been pretty much impossible to do without
rewriting the module code. That's not going to happen on account of one
quirky architecture which Linus doesn't particularly like.
FTTC broadband for 0.8mile line: currently at 9.5Mbps down 400kbps up
according to speedtest.net.
More information about the linux-arm-kernel