[PATCH V2 16/16] powerpc/mm: Support segment table for Power9

Aneesh Kumar K.V aneesh.kumar at linux.vnet.ibm.com
Thu Jun 9 01:07:45 AEST 2016


"Aneesh Kumar K.V" <aneesh.kumar at linux.vnet.ibm.com> writes:

> PowerISA 3.0 adds an in memory table for storing segment translation
> information. In this mode, which is enabled by setting both HOST RADIX
> and GUEST RADIX bits in partition table to 0 and enabling UPRT to
> 1, we have a per process segment table. The segment table details
> are stored in the process table indexed by PID value.
>
> Segment table mode also requires us to map the process table at the
> beginning of a 1TB segment.
>
> On the linux kernel side we enable this model if we find that
> the radix is explicitily disabled by setting the ibm,pa-feature radix
> bit (byte 40 bit 0) set to 0. If the size of ibm,pa-feature node is less
> than 40 bytes, we enable the legacy HPT mode using SLB. If radix bit
> is set to 1, we use the radix mode.


Missed updating the commit message.

On the linux kernel side we enable this model if we find hash mmu bit
(byte 58 bit 0) of ibm,pa-feature device tree node set to 1. If the size
of ibm,pa-feature node is less than 58 bytes or if the hash mmu bit is
set to 0, we enable the legacy HPT mode using SLB. If radix bit (byte 40
bit 0) is set to 1, we use the radix mode.

>
> With respect to SLB mapping, we bolt mapp the entire kernel range and
> and only handle user space segment fault.
>

-aneesh



More information about the Linuxppc-dev mailing list