@@ -98,6 +98,13 @@ struct esr_context {
9898 __u64 esr ;
9999};
100100
101+ #define POE_MAGIC 0x504f4530
102+
103+ struct poe_context {
104+ struct _aarch64_ctx head ;
105+ __u64 por_el0 ;
106+ };
107+
101108/*
102109 * extra_context: describes extra space in the signal frame for
103110 * additional structures that don't fit in sigcontext.__reserved[].
@@ -176,6 +183,15 @@ struct zt_context {
176183 __u16 __reserved [3 ];
177184};
178185
186+ #define GCS_MAGIC 0x47435300
187+
188+ struct gcs_context {
189+ struct _aarch64_ctx head ;
190+ __u64 gcspr ;
191+ __u64 features_enabled ;
192+ __u64 reserved ;
193+ };
194+
179195#endif /* !__ASSEMBLY__ */
180196
181197#include <asm/sve_context.h>
@@ -320,10 +336,10 @@ struct zt_context {
320336 ((sizeof(struct za_context) + (__SVE_VQ_BYTES - 1)) \
321337 / __SVE_VQ_BYTES * __SVE_VQ_BYTES)
322338
323- #define ZA_SIG_REGS_SIZE (vq ) ((vq * __SVE_VQ_BYTES) * (vq * __SVE_VQ_BYTES))
339+ #define ZA_SIG_REGS_SIZE (vq ) (((vq) * __SVE_VQ_BYTES) * ((vq) * __SVE_VQ_BYTES))
324340
325341#define ZA_SIG_ZAV_OFFSET (vq , n ) (ZA_SIG_REGS_OFFSET + \
326- (SVE_SIG_ZREG_SIZE(vq) * n ))
342+ (SVE_SIG_ZREG_SIZE(vq) * (n) ))
327343
328344#define ZA_SIG_CONTEXT_SIZE (vq ) \
329345 (ZA_SIG_REGS_OFFSET + ZA_SIG_REGS_SIZE(vq))
@@ -334,7 +350,7 @@ struct zt_context {
334350
335351#define ZT_SIG_REGS_OFFSET sizeof(struct zt_context)
336352
337- #define ZT_SIG_REGS_SIZE (n ) (ZT_SIG_REG_BYTES * n )
353+ #define ZT_SIG_REGS_SIZE (n ) (ZT_SIG_REG_BYTES * (n) )
338354
339355#define ZT_SIG_CONTEXT_SIZE (n ) \
340356 (sizeof(struct zt_context) + ZT_SIG_REGS_SIZE(n))
0 commit comments