[PATCH v3 3/7] arm64: split off early mapping code from early_fixmap_init()

Ard Biesheuvel ard.biesheuvel at linaro.org
Tue Dec 8 05:29:33 PST 2015


On 8 December 2015 at 13:40, Will Deacon <will.deacon at arm.com> wrote:
> On Thu, Dec 03, 2015 at 12:18:40PM +0000, Mark Rutland wrote:
>> Apologies that it's taken me so long to get around to this...
>>
>> On Mon, Nov 16, 2015 at 12:23:14PM +0100, Ard Biesheuvel wrote:
>> > This splits off and generalises the population of the statically
>> > allocated fixmap page tables so that we may reuse it later for
>> > the linear mapping once we move the kernel text mapping out of it.
>> >
>> > This also involves taking into account that table entries at any of
>> > the levels we are populating may have been populated already, since
>> > the fixmap mapping might not be disjoint up to the pgd level anymore
>> > from other early mappings.
>>
>> As a heads-up, for avoiding TLB conflicts, I'm currently working on
>> alternative way of creating the kernel page tables which will definitely
>> conflict here, and may or may not supercede this approach.
>
> Given that the Christmas break is around the corner and your TLB series
> is probably going to take some time to get right, I suggest we persevere
> with Ard's current patch series for 4.5 and merge the TLB conflict solution
> for 4.6. I don't want us to end up in a situation where this is needlessly
> blocked on something that isn't quite ready.
>
> Any objections? If not, Ard -- can you post a new version of this, please?
>

Happy to post a new version, with the following remarks
- my current private tree has evolved in the mean time, and I am now
putting the kernel image at the base of the vmalloc region (and the
module region right before)
- I think Mark's changes would allow me to deobfuscate the VA bias
that redirects __va() translations into the kernel VA space rather
than the linear mapping



More information about the linux-arm-kernel mailing list