Re: [Qemu-devel] [PATCH 03/24] target-arm: Restrict check_ap() use of S and R bits to v6 and earlier

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jan 22, 2014 at 6:12 AM, Peter Maydell <peter.maydell@xxxxxxxxxx> wrote:
> The SCTLR bits S and R (8 and 9) only exist in ARMv6 and earlier.
> In ARMv7 these bits RAZ, and in ARMv8 they are reassigned. Guard
> the use of them in check_ap() so that we don't get incorrect results
> for ARMv8 CPUs.
>
> Signed-off-by: Peter Maydell <peter.maydell@xxxxxxxxxx>

Reviewed-by: Peter Crosthwaite <peter.crosthwaite@xxxxxxxxxx>

> ---
>  target-arm/helper.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/target-arm/helper.c b/target-arm/helper.c
> index 792953e..205e36a 100644
> --- a/target-arm/helper.c
> +++ b/target-arm/helper.c
> @@ -2765,6 +2765,9 @@ static inline int check_ap(CPUARMState *env, int ap, int domain_prot,
>
>    switch (ap) {
>    case 0:
> +      if (arm_feature(env, ARM_FEATURE_V7)) {
> +          return 0;
> +      }
>        if (access_type == 1)
>            return 0;
>        switch (env->cp15.c1_sys & (SCTLR_S | SCTLR_R)) {
> --
> 1.8.5
>
>
_______________________________________________
kvmarm mailing list
kvmarm@xxxxxxxxxxxxxxxxxxxxx
https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm




[Index of Archives]     [Linux KVM]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux