diff options
author | Heiko Carstens <hca@linux.ibm.com> | 2024-02-03 11:45:15 +0100 |
---|---|---|
committer | Heiko Carstens <hca@linux.ibm.com> | 2024-02-16 14:30:16 +0100 |
commit | bdbd3acb33f5b09b99d75b0f0edeb7db98a05c89 (patch) | |
tree | b1589fdea4b9301980671fb803ea19d9695149be /arch/s390/kernel/perf_regs.c | |
parent | 9cbff7f2214d16af5c10f1f55ac72d4c1a8bd787 (diff) |
s390/fpu: remove anonymous union from struct fpu
The anonymous union within struct fpu contains a floating point register
array and a vector register array. Given that the vector register is always
present remove the floating point register array. For configurations
without vector registers save the floating point register contents within
their corresponding vector register location.
This allows to remove the union, and also to simplify ptrace and perf code.
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Diffstat (limited to 'arch/s390/kernel/perf_regs.c')
-rw-r--r-- | arch/s390/kernel/perf_regs.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/s390/kernel/perf_regs.c b/arch/s390/kernel/perf_regs.c index 511349b8bc5c..a6b058ee4a36 100644 --- a/arch/s390/kernel/perf_regs.c +++ b/arch/s390/kernel/perf_regs.c @@ -19,10 +19,7 @@ u64 perf_reg_value(struct pt_regs *regs, int idx) return 0; idx -= PERF_REG_S390_FP0; - if (cpu_has_vx()) - fp = *(freg_t *)(current->thread.ufpu.vxrs + idx); - else - fp = current->thread.ufpu.fprs[idx]; + fp = *(freg_t *)(current->thread.ufpu.vxrs + idx); return fp.ui; } |