Eric Miao posted a patch series for that already.
Some effort is being deployed at my $job to do that. Initially only the
linear translation will be supported, which should cover the vast
majority of the cases already. The odd targets will simply require a
build of their own like it is done today.
Again, a majority of targets may simply share the default one.
VMALLOC_END should only need to become a per machine class variable
initialized at run time.
We already have runtime selectable machine instances. Building multiple
machine class could extend on that.
Pity... Nah.
Like I said, there is an effort to gradually overcome those issues one
by one.
Nicolas
--