diff options
author | Jeff Dike <jdike@addtoit.com> | 2006-02-07 12:58:43 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-02-07 16:12:32 -0800 |
commit | e2216feb37f1df65a29fb1e5ed41d9f7ba657b2c (patch) | |
tree | 445da277a6f0202c6de853474f846467bf2dd7b7 /arch/um/os-Linux/sys-x86_64/registers.c | |
parent | 43b00fdbb13bfc1b2f4a8e5b65315db6d9c479a3 (diff) |
[PATCH] uml: initialize process FP registers properly
We weren't making sure that we initialized the FP registers of new processes
to sane values.
This patch also moves some defines in the affected area closer to where they
are used.
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/um/os-Linux/sys-x86_64/registers.c')
-rw-r--r-- | arch/um/os-Linux/sys-x86_64/registers.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/um/os-Linux/sys-x86_64/registers.c b/arch/um/os-Linux/sys-x86_64/registers.c index 4b638dfb52b..001941fa1a1 100644 --- a/arch/um/os-Linux/sys-x86_64/registers.c +++ b/arch/um/os-Linux/sys-x86_64/registers.c @@ -70,9 +70,12 @@ void init_registers(int pid) err); } -void get_safe_registers(unsigned long *regs) +void get_safe_registers(unsigned long *regs, unsigned long *fp_regs) { memcpy(regs, exec_regs, HOST_FRAME_SIZE * sizeof(unsigned long)); + if(fp_regs != NULL) + memcpy(fp_regs, exec_fp_regs, + HOST_FP_SIZE * sizeof(unsigned long)); } void get_thread_regs(union uml_pt_regs *uml_regs, void *buffer) |