[aarch64-port-dev ] RFR: 8079203: aarch64: need to cater for different partner implementations

Edward Nevill edward.nevill at linaro.org
Tue May 5 14:23:41 UTC 2015


On Fri, 2015-05-01 at 15:23 +0100, Mark Rutland wrote:

> From a look at the proposed patch, I guess this assumes a uniform SMP
> system (i.e. no big.LITTLE)?

Not quite: The assumption is that any CPU implementer == ARM could be big little and therefore could contain A53 and therefor the A53 feature must be enabled.

> A while back [1] the /proc/cpuinfo format was fixed to show information per-cpu
> (example form a Juno system below), and it looks like the CPU information
> parsed will only refer to ther final CPU listed, and may not be representative
> of the system as a whole.
> 
> That format has been packported to the various stable kernels too.
> 

Nonetheless, we must still cater for olde style /proc/cpuinfo. I have modified the webrev below so that if it is a new style /proc/cpuinfo, it will only enable the A53 feature if it can positively identify an A53 core.

Otherwise, if it is an old style /proc/cpuinfo it will assume the A53 feature needs enabling if it finds an A57 (or, of course if it is identified as an A53).

http://cr.openjdk.java.net/~enevill/8079203/webrev.01

> Thanks,
> Mark.

You're welcome. It would be much easier if the kernel exported this information in a machine readable form. I hate having to grub around in /proc/cpuinfo to find this information, and I know that others in the OpenJDK community hate this also. Its fragile and non portable.

Why can the kernel not make MIDR readable at EL0 and provide a HWCAP_BIGLITTLE in auxv.

All the best,
Ed.




More information about the aarch64-port-dev mailing list