Message ID | 20210407124209.828540-6-imbrenda@linux.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | s390: Add support for large pages | expand |
On 4/7/21 2:42 PM, Claudio Imbrenda wrote: > Add PGM_TEID_* macros, to select TEID fields from various types of > translation and protection exceptions. > > Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com> > --- > lib/s390x/asm/interrupt.h | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/lib/s390x/asm/interrupt.h b/lib/s390x/asm/interrupt.h > index bf0eb40d..d32aacb2 100644 > --- a/lib/s390x/asm/interrupt.h > +++ b/lib/s390x/asm/interrupt.h > @@ -13,6 +13,12 @@ > #define EXT_IRQ_EXTERNAL_CALL 0x1202 > #define EXT_IRQ_SERVICE_SIG 0x2401 > > +#define PGM_TEID_ADDR PAGE_MASK > +#define PGM_TEID_AI 0x003 ASCEID > +#define PGM_TEID_M 0x004 MVPGI? or MVPGIND > +#define PGM_TEID_A 0x008 ACCESL? > +#define PGM_TEID_FS 0xc00 You don't use that one, right? And even if you did you'd need one for store and fetch each for it to be useful. TLDR: Those abbreviations are too short > + > void register_pgm_cleanup_func(void (*f)(void)); > void handle_pgm_int(struct stack_frame_int *stack); > void handle_ext_int(struct stack_frame_int *stack); >
diff --git a/lib/s390x/asm/interrupt.h b/lib/s390x/asm/interrupt.h index bf0eb40d..d32aacb2 100644 --- a/lib/s390x/asm/interrupt.h +++ b/lib/s390x/asm/interrupt.h @@ -13,6 +13,12 @@ #define EXT_IRQ_EXTERNAL_CALL 0x1202 #define EXT_IRQ_SERVICE_SIG 0x2401 +#define PGM_TEID_ADDR PAGE_MASK +#define PGM_TEID_AI 0x003 +#define PGM_TEID_M 0x004 +#define PGM_TEID_A 0x008 +#define PGM_TEID_FS 0xc00 + void register_pgm_cleanup_func(void (*f)(void)); void handle_pgm_int(struct stack_frame_int *stack); void handle_ext_int(struct stack_frame_int *stack);
Add PGM_TEID_* macros, to select TEID fields from various types of translation and protection exceptions. Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com> --- lib/s390x/asm/interrupt.h | 6 ++++++ 1 file changed, 6 insertions(+)