Lines Matching refs:sa
63 struct save_area *sa; in save_area_alloc() local
65 sa = memblock_alloc(sizeof(*sa), 8); in save_area_alloc()
66 if (!sa) in save_area_alloc()
70 list_add(&sa->list, &dump_save_areas); in save_area_alloc()
72 list_add_tail(&sa->list, &dump_save_areas); in save_area_alloc()
73 return sa; in save_area_alloc()
87 void __init save_area_add_regs(struct save_area *sa, void *regs) in save_area_add_regs() argument
92 memcpy(&sa->psw, &lc->psw_save_area, sizeof(sa->psw)); in save_area_add_regs()
93 memcpy(&sa->ctrs, &lc->cregs_save_area, sizeof(sa->ctrs)); in save_area_add_regs()
94 memcpy(&sa->gprs, &lc->gpregs_save_area, sizeof(sa->gprs)); in save_area_add_regs()
95 memcpy(&sa->acrs, &lc->access_regs_save_area, sizeof(sa->acrs)); in save_area_add_regs()
96 memcpy(&sa->fprs, &lc->floating_pt_save_area, sizeof(sa->fprs)); in save_area_add_regs()
97 memcpy(&sa->fpc, &lc->fpt_creg_save_area, sizeof(sa->fpc)); in save_area_add_regs()
98 memcpy(&sa->prefix, &lc->prefixreg_save_area, sizeof(sa->prefix)); in save_area_add_regs()
99 memcpy(&sa->todpreg, &lc->tod_progreg_save_area, sizeof(sa->todpreg)); in save_area_add_regs()
100 memcpy(&sa->timer, &lc->cpu_timer_save_area, sizeof(sa->timer)); in save_area_add_regs()
101 memcpy(&sa->todcmp, &lc->clock_comp_save_area, sizeof(sa->todcmp)); in save_area_add_regs()
107 void __init save_area_add_vxrs(struct save_area *sa, __vector128 *vxrs) in save_area_add_vxrs() argument
113 sa->vxrs_low[i] = vxrs[i].low; in save_area_add_vxrs()
115 memcpy(sa->vxrs_high, vxrs + 16, 16 * sizeof(__vector128)); in save_area_add_vxrs()
299 static void *fill_cpu_elf_notes(void *ptr, int cpu, struct save_area *sa) in fill_cpu_elf_notes() argument
306 memcpy(&nt_prstatus.pr_reg.gprs, sa->gprs, sizeof(sa->gprs)); in fill_cpu_elf_notes()
307 memcpy(&nt_prstatus.pr_reg.psw, sa->psw, sizeof(sa->psw)); in fill_cpu_elf_notes()
308 memcpy(&nt_prstatus.pr_reg.acrs, sa->acrs, sizeof(sa->acrs)); in fill_cpu_elf_notes()
312 memcpy(&nt_fpregset.fpc, &sa->fpc, sizeof(sa->fpc)); in fill_cpu_elf_notes()
313 memcpy(&nt_fpregset.fprs, &sa->fprs, sizeof(sa->fprs)); in fill_cpu_elf_notes()
317 ptr = nt_init(ptr, NT_S390_TIMER, &sa->timer, sizeof(sa->timer)); in fill_cpu_elf_notes()
318 ptr = nt_init(ptr, NT_S390_TODCMP, &sa->todcmp, sizeof(sa->todcmp)); in fill_cpu_elf_notes()
319 ptr = nt_init(ptr, NT_S390_TODPREG, &sa->todpreg, sizeof(sa->todpreg)); in fill_cpu_elf_notes()
320 ptr = nt_init(ptr, NT_S390_CTRS, &sa->ctrs, sizeof(sa->ctrs)); in fill_cpu_elf_notes()
321 ptr = nt_init(ptr, NT_S390_PREFIX, &sa->prefix, sizeof(sa->prefix)); in fill_cpu_elf_notes()
324 &sa->vxrs_high, sizeof(sa->vxrs_high)); in fill_cpu_elf_notes()
326 &sa->vxrs_low, sizeof(sa->vxrs_low)); in fill_cpu_elf_notes()
336 struct save_area *sa = NULL; in get_cpu_elf_notes_size() local
341 size += nt_size(NT_S390_TIMER, sizeof(sa->timer)); in get_cpu_elf_notes_size()
342 size += nt_size(NT_S390_TODCMP, sizeof(sa->todcmp)); in get_cpu_elf_notes_size()
343 size += nt_size(NT_S390_TODPREG, sizeof(sa->todpreg)); in get_cpu_elf_notes_size()
344 size += nt_size(NT_S390_CTRS, sizeof(sa->ctrs)); in get_cpu_elf_notes_size()
345 size += nt_size(NT_S390_PREFIX, sizeof(sa->prefix)); in get_cpu_elf_notes_size()
347 size += nt_size(NT_S390_VXRS_HIGH, sizeof(sa->vxrs_high)); in get_cpu_elf_notes_size()
348 size += nt_size(NT_S390_VXRS_LOW, sizeof(sa->vxrs_low)); in get_cpu_elf_notes_size()
476 struct save_area *sa; in get_cpu_cnt() local
479 list_for_each_entry(sa, &dump_save_areas, list) in get_cpu_cnt()
480 if (sa->prefix != 0) in get_cpu_cnt()
524 struct save_area *sa; in notes_init() local
531 list_for_each_entry(sa, &dump_save_areas, list) in notes_init()
532 if (sa->prefix != 0) in notes_init()
533 ptr = fill_cpu_elf_notes(ptr, cpu++, sa); in notes_init()