Update runtime_instr_cb structure to be consistent with the runtime instrumentation documentation.
Unified · Split
| @@ -5,55 +5,55 @@ · 4 unmodified lines | |||
| 5 | #define S390_RUNTIME_INSTR_STOP 0x2 | 5 | #define S390_RUNTIME_INSTR_STOP 0x2 |
| 6 | 6 | ||
| 7 | struct runtime_instr_cb { | 7 | struct runtime_instr_cb { |
| 8 | __u64 buf_current; | 8 | __u64 rca; |
| 9 | __u64 buf_origin; | 9 | __u64 roa; |
| 10 | __u64 buf_limit; | 10 | __u64 rla; |
| 11 | 11 | ||
| 12 | __u32 valid : 1; | 12 | __u32 v : 1; |
| 13 | __u32 pstate : 1; | 13 | __u32 s : 1; |
| 14 | __u32 pstate_set_buf : 1; | 14 | __u32 k : 1; |
| 15 | __u32 home_space : 1; | 15 | __u32 h : 1; |
| 16 | __u32 altered : 1; | 16 | __u32 a : 1; |
| 17 | __u32 : 3; | 17 | __u32 reserved1 : 3; |
| 18 | __u32 pstate_sample : 1; | 18 | __u32 ps : 1; |
| 19 | __u32 sstate_sample : 1; | 19 | __u32 qs : 1; |
| 20 | __u32 pstate_collect : 1; | 20 | __u32 pc : 1; |
| 21 | __u32 sstate_collect : 1; | 21 | __u32 qc : 1; |
| 22 | __u32 : 1; | 22 | __u32 reserved2 : 1; |
| 23 | __u32 halted_int : 1; | 23 | __u32 g : 1; |
| 24 | __u32 int_requested : 1; | 24 | __u32 u : 1; |
| 25 | __u32 buffer_full_int : 1; | 25 | __u32 l : 1; |
| 26 | __u32 key : 4; | 26 | __u32 key : 4; |
| 27 | __u32 : 9; | 27 | __u32 reserved3 : 8; |
| 28 | __u32 t : 1; | ||
| 28 | __u32 rgs : 3; | 29 | __u32 rgs : 3; |
| 29 | 30 | ||
| 30 | __u32 mode : 4; | 31 | __u32 m : 4; |
| 31 | __u32 next : 1; | 32 | __u32 n : 1; |
| 32 | __u32 mae : 1; | 33 | __u32 mae : 1; |
| 33 | __u32 : 2; | 34 | __u32 reserved4 : 2; |
| 34 | __u32 call_type_br : 1; | 35 | __u32 c : 1; |
| 35 | __u32 return_type_br : 1; | 36 | __u32 r : 1; |
| 36 | __u32 other_type_br : 1; | 37 | __u32 b : 1; |
| 37 | __u32 bc_other_type : 1; | 38 | __u32 j : 1; |
| 38 | __u32 emit : 1; | 39 | __u32 e : 1; |
| 39 | __u32 tx_abort : 1; | 40 | __u32 x : 1; |
| 40 | __u32 : 2; | 41 | __u32 reserved5 : 2; |
| 41 | __u32 bp_xn : 1; | 42 | __u32 bpxn : 1; |
| 42 | __u32 bp_xt : 1; | 43 | __u32 bpxt : 1; |
| 43 | __u32 bp_ti : 1; | 44 | __u32 bpti : 1; |
| 44 | __u32 bp_ni : 1; | 45 | __u32 bpni : 1; |
| 45 | __u32 suppr_y : 1; | 46 | __u32 reserved6 : 2; |
| 46 | __u32 suppr_z : 1; | ||
| 47 | 47 | ||
| 48 | __u32 dc_miss_extra : 1; | 48 | __u32 d : 1; |
| 49 | __u32 lat_lev_ignore : 1; | 49 | __u32 f : 1; |
| 50 | __u32 ic_lat_lev : 4; | 50 | __u32 ic : 4; |
| 51 | __u32 dc_lat_lev : 4; | 51 | __u32 dc : 4; |
| 52 | 52 | ||
| 53 | __u64 reserved1; | 53 | __u64 reserved7; |
| 54 | __u64 scaling_factor; | 54 | __u64 sf; |
| 55 | __u64 rsic; | 55 | __u64 rsic; |
| 56 | __u64 reserved2; | 56 | __u64 reserved8; |
| 57 | } __packed __aligned(8); | 57 | } __packed __aligned(8); |
| 58 | 58 | ||
| 59 | extern struct runtime_instr_cb runtime_instr_empty_cb; | 59 | extern struct runtime_instr_cb runtime_instr_empty_cb; |
| @@ -49,13 +49,13 @@ static void disable_runtime_instr(void) · 48 unmodified lines | |||
| 49 | 49 | ||
| 50 | static void init_runtime_instr_cb(struct runtime_instr_cb *cb) | 50 | static void init_runtime_instr_cb(struct runtime_instr_cb *cb) |
| 51 | { | 51 | { |
| 52 | cb->buf_limit = 0xfff; | 52 | cb->rla = 0xfff; |
| 53 | cb->pstate = 1; | 53 | cb->s = 1; |
| 54 | cb->pstate_set_buf = 1; | 54 | cb->k = 1; |
| 55 | cb->pstate_sample = 1; | 55 | cb->ps = 1; |
| 56 | cb->pstate_collect = 1; | 56 | cb->pc = 1; |
| 57 | cb->key = PAGE_DEFAULT_KEY; | 57 | cb->key = PAGE_DEFAULT_KEY; |
| 58 | cb->valid = 1; | 58 | cb->v = 1; |
| 59 | } | 59 | } |
| 60 | 60 | ||
| 61 | SYSCALL_DEFINE1(s390_runtime_instr, int, command) | 61 | SYSCALL_DEFINE1(s390_runtime_instr, int, command) |
| @@ -3283,7 +3283,7 @@ static void sync_regs(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run) · 3282 unmodified lines | |||
| 3283 | */ | 3283 | */ |
| 3284 | if ((kvm_run->kvm_dirty_regs & KVM_SYNC_RICCB) && | 3284 | if ((kvm_run->kvm_dirty_regs & KVM_SYNC_RICCB) && |
| 3285 | test_kvm_facility(vcpu->kvm, 64) && | 3285 | test_kvm_facility(vcpu->kvm, 64) && |
| 3286 | riccb->valid && | 3286 | riccb->v && |
| 3287 | !(vcpu->arch.sie_block->ecb3 & ECB3_RI)) { | 3287 | !(vcpu->arch.sie_block->ecb3 & ECB3_RI)) { |
| 3288 | VCPU_EVENT(vcpu, 3, "%s", "ENABLE: RI (sync_regs)"); | 3288 | VCPU_EVENT(vcpu, 3, "%s", "ENABLE: RI (sync_regs)"); |
| 3289 | vcpu->arch.sie_block->ecb3 |= ECB3_RI; | 3289 | vcpu->arch.sie_block->ecb3 |= ECB3_RI; |