From e3cdbed45f28f402f2ab78d00b67c035f2618903 Mon Sep 17 00:00:00 2001 From: Bob Supnik Date: Sun, 3 Jun 2018 15:41:57 -0700 Subject: [PATCH] alpha: Correct physical address masking --- alpha/alpha_ev5_defs.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/alpha/alpha_ev5_defs.h b/alpha/alpha_ev5_defs.h index cfeeb65d..edb42db6 100644 --- a/alpha/alpha_ev5_defs.h +++ b/alpha/alpha_ev5_defs.h @@ -55,13 +55,13 @@ #define VA_GETOFF(x) (((uint32) (x)) & VA_M_OFF) #define VA_GETVPN(x) (((uint32) ((x) >> VA_V_VPN)) & VA_M_VPN) #define VA_GETSEXT(x) (((uint32) ((x) >> VA_V_SEXT)) & VA_M_SEXT) -#define PHYS_ADDR(p,v) ((((t_uint64) (p)) < VA_N_OFF) | VA_GETOFF (v)) +#define PHYS_ADDR(p,v) (((((t_uint64) (p)) < VA_N_OFF) | VA_GETOFF (v)) & EV5_PA_MASK) /* 43b and 32b superpages - present in all implementations */ #define SPEN_43 0x2 #define SPEN_32 0x1 -#define SP43_MASK 0x000001FFFFFFFFFF +#define SP43_MASK (EV5_PA_MASK) #define SP32_MASK 0x000000003FFFFFFF #define VPN_GETSP43(x) ((uint32) (((x) >> (VA_WIDTH - VA_N_OFF - 2)) & 3)) #define VPN_GETSP32(x) ((uint32) (((x) >> (NTVA_WIDTH - VA_N_OFF - 2)) & 0x1FFF))