s390: save_access_regs for self-checkpoint
PATCH 1/1 s390: save_access_regs for self-checkpoint
When doing a self-checkpoint, we have to get the access registers from hw.
Signed-off-by Serge E. Hallyn <serue-r/[email protected]>
--- arch/s390/kernel/checkpoint.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-)
arch/s390/kernel/checkpoint.c +5 -1
@@ -79,7 +79,11 @@ static void s390_copy_regs(int op, struct ckpt_hdr_cpu *h, }CKPT_COPY_ARRAY (op, h->fprs, thr->fp_regs.fprs,NUM_FPRS ); -CKPT_COPY_ARRAY (op, h->acrs, thr->acrs,NUM_ACRS ); +if (op ==CKPT_CPT && t == current) { +save_access_regs (h->acrs); + }else { +CKPT_COPY_ARRAY (op, h->acrs, thr->acrs,NUM_ACRS ); + }CKPT_COPY_ARRAY (op, h->per_control_regs, thr->per_info.control_regs.words.cr,NUM_CR_WORDS ); }
Signature · 1 line
1.6.1
A message that is not in the archive (sent off-list or not yet received): 20100225170554.GA16683-r/[email protected]
Oren Laadan
AppliedApplied
Quoted 25 lines · Serge E. Hallyn
When doing a self-checkpoint, we have to get the access registers from hw.
Signed-off-by Serge E. Hallyn <serue-r/[email protected]>--- arch/s390/kernel/checkpoint.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-)arch/s390/kernel/checkpoint.c +5
-1@@ -79,7 +79,11 @@ static void s390_copy_regs(int op, struct ckpt_hdr_cpu *h, }CKPT_COPY_ARRAY (op, h->fprs, thr->fp_regs.fprs,NUM_FPRS ); -CKPT_COPY_ARRAY (op, h->acrs, thr->acrs,NUM_ACRS ); +if (op ==CKPT_CPT && t == current) { +save_access_regs (h->acrs); + }else { +CKPT_COPY_ARRAY (op, h->acrs, thr->acrs,NUM_ACRS ); + }CKPT_COPY_ARRAY (op, h->per_control_regs, thr->per_info.control_regs.words.cr,NUM_CR_WORDS ); }