Let's replace the magic 0x0000000180000000ULL numeric constants with PSW_MASK_64 as it's used more often since the introduction of smp and sie. Signed-off-by: Janosch Frank <frankja@xxxxxxxxxxxxx> Reviewed-by: Claudio Imbrenda <imbrenda@xxxxxxxxxxxxx> --- lib/s390x/asm/arch_def.h | 3 +++ lib/s390x/smp.c | 2 +- s390x/mvpg-sie.c | 2 +- s390x/sie.c | 2 +- s390x/skrf.c | 6 +++--- 5 files changed, 9 insertions(+), 6 deletions(-) diff --git a/lib/s390x/asm/arch_def.h b/lib/s390x/asm/arch_def.h index d9f51efb..302ef1ff 100644 --- a/lib/s390x/asm/arch_def.h +++ b/lib/s390x/asm/arch_def.h @@ -46,6 +46,9 @@ struct psw { #define PSW_MASK_DAT 0x0400000000000000UL #define PSW_MASK_WAIT 0x0002000000000000UL #define PSW_MASK_PSTATE 0x0001000000000000UL +#define PSW_MASK_EA 0x0000000100000000UL +#define PSW_MASK_BA 0x0000000080000000UL +#define PSW_MASK_64 PSW_MASK_BA | PSW_MASK_EA; #define CR0_EXTM_SCLP 0x0000000000000200UL #define CR0_EXTM_EXTC 0x0000000000002000UL diff --git a/lib/s390x/smp.c b/lib/s390x/smp.c index ee68d676..228fe667 100644 --- a/lib/s390x/smp.c +++ b/lib/s390x/smp.c @@ -202,7 +202,7 @@ int smp_cpu_setup(uint16_t addr, struct psw psw) cpu->lowcore->sw_int_psw.addr = psw.addr; cpu->lowcore->sw_int_grs[14] = psw.addr; cpu->lowcore->sw_int_grs[15] = (uint64_t)cpu->stack + (PAGE_SIZE * 4); - lc->restart_new_psw.mask = 0x0000000180000000UL; + lc->restart_new_psw.mask = PSW_MASK_64; lc->restart_new_psw.addr = (uint64_t)smp_cpu_setup_state; lc->sw_int_crs[0] = 0x0000000000040000UL; diff --git a/s390x/mvpg-sie.c b/s390x/mvpg-sie.c index 70d2fcfa..ccc273b4 100644 --- a/s390x/mvpg-sie.c +++ b/s390x/mvpg-sie.c @@ -100,7 +100,7 @@ static void setup_guest(void) sie_guest_create(&vm, (uint64_t)guest, HPAGE_SIZE); vm.sblk->gpsw.addr = PAGE_SIZE * 4; - vm.sblk->gpsw.mask = 0x0000000180000000ULL; + vm.sblk->gpsw.mask = PSW_MASK_64; vm.sblk->ictl = ICTL_OPEREXC | ICTL_PINT; /* Enable MVPG interpretation as we want to test KVM and not ourselves */ vm.sblk->eca = ECA_MVPGI; diff --git a/s390x/sie.c b/s390x/sie.c index ed2c3263..87575b29 100644 --- a/s390x/sie.c +++ b/s390x/sie.c @@ -27,7 +27,7 @@ static struct vm vm; static void test_diag(u32 instr) { vm.sblk->gpsw.addr = PAGE_SIZE * 2; - vm.sblk->gpsw.mask = 0x0000000180000000ULL; + vm.sblk->gpsw.mask = PSW_MASK_64; memset(guest_instr, 0, PAGE_SIZE); memcpy(guest_instr, &instr, 4); diff --git a/s390x/skrf.c b/s390x/skrf.c index 94e906a6..9488c32b 100644 --- a/s390x/skrf.c +++ b/s390x/skrf.c @@ -125,15 +125,15 @@ static void ecall_cleanup(void) { struct lowcore *lc = (void *)0x0; - lc->ext_new_psw.mask = 0x0000000180000000UL; lc->sw_int_crs[0] = 0x0000000000040000; + lc->ext_new_psw.mask = PSW_MASK_64; /* * PGM old contains the ext new PSW, we need to clean it up, * so we don't get a special operation exception on the lpswe * of pgm old. */ - lc->pgm_old_psw.mask = 0x0000000180000000UL; + lc->pgm_old_psw.mask = PSW_MASK_64; check_pgm_int_code(PGM_INT_CODE_SPECIFICATION); set_flag(1); @@ -148,7 +148,7 @@ static void ecall_setup(void) register_pgm_cleanup_func(ecall_cleanup); expect_pgm_int(); /* Put a skey into the ext new psw */ - lc->ext_new_psw.mask = 0x00F0000180000000UL; + lc->ext_new_psw.mask = 0x00F0000000000000UL | PSW_MASK_64; /* Open up ext masks */ ctl_set_bit(0, CTL0_EXTERNAL_CALL); mask = extract_psw_mask(); -- 2.31.1