On Mon, 2016-12-05 at 19:04 +1100, Paul Mackerras wrote:
> +       vec5 = of_get_flat_dt_prop(chosen, "ibm,architecture-vec-5", &size);
> +       if (!vec5 || size <= OV5_INDX(OV5_MMU_RADIX_300))
> +               return;

Could be bike shedding but shouldn't we first check if
we are in an LPAR and bail out of we are not, then
if we *are* and the above size is too small to contain
the ARCH 3.00 options, also disable radix as obviously
the hypervisor doesn't know about it ?

> +       if (!(vec5[OV5_INDX(OV5_MMU_RADIX_300)] & 
> OV5_FEAT(OV5_MMU_RADIX_300)))
> +               /* Hypervisor doesn't support radix */
> +               cur_cpu_spec->mmu_features &= ~MMU_FTR_TYPE_RADIX;
> +}
> +

Reply via email to