LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH 1/9] x86: change most X86_32 pt_regs members to unsigned long
@ 2008-02-08 20:09 Harvey Harrison
2008-02-08 21:13 ` Alexey Dobriyan
2008-02-17 14:00 ` Thomas Gleixner
0 siblings, 2 replies; 4+ messages in thread
From: Harvey Harrison @ 2008-02-08 20:09 UTC (permalink / raw)
To: Ingo Molnar, Roland McGrath; +Cc: H. Peter Anvin, Thomas Gleixner, LKML
All but ax and orig_ax can move with no changes.
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
---
arch/x86/kernel/process_32.c | 5 ++---
arch/x86/kernel/signal_32.c | 4 ++--
include/asm-x86/ptrace.h | 28 ++++++++++++++--------------
3 files changed, 18 insertions(+), 19 deletions(-)
diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
index dabdbef..32247ad 100644
--- a/arch/x86/kernel/process_32.c
+++ b/arch/x86/kernel/process_32.c
@@ -358,7 +358,7 @@ void __show_registers(struct pt_regs *regs, int all)
init_utsname()->version);
printk("EIP: %04x:[<%08lx>] EFLAGS: %08lx CPU: %d\n",
- 0xffff & regs->cs, regs->ip, regs->flags,
+ (u16)regs->cs, regs->ip, regs->flags,
smp_processor_id());
print_symbol("EIP is at %s\n", regs->ip);
@@ -367,8 +367,7 @@ void __show_registers(struct pt_regs *regs, int all)
printk("ESI: %08lx EDI: %08lx EBP: %08lx ESP: %08lx\n",
regs->si, regs->di, regs->bp, sp);
printk(" DS: %04x ES: %04x FS: %04x GS: %04x SS: %04x\n",
- regs->ds & 0xffff, regs->es & 0xffff,
- regs->fs & 0xffff, gs, ss);
+ (u16)regs->ds, (u16)regs->es, (u16)regs->fs, gs, ss);
if (!all)
return;
diff --git a/arch/x86/kernel/signal_32.c b/arch/x86/kernel/signal_32.c
index caee1f0..7718395 100644
--- a/arch/x86/kernel/signal_32.c
+++ b/arch/x86/kernel/signal_32.c
@@ -393,8 +393,8 @@ static int setup_frame(int sig, struct k_sigaction *ka,
regs->sp = (unsigned long) frame;
regs->ip = (unsigned long) ka->sa.sa_handler;
regs->ax = (unsigned long) sig;
- regs->dx = (unsigned long) 0;
- regs->cx = (unsigned long) 0;
+ regs->dx = 0;
+ regs->cx = 0;
regs->ds = __USER_DS;
regs->es = __USER_DS;
diff --git a/include/asm-x86/ptrace.h b/include/asm-x86/ptrace.h
index d9e04b4..708337a 100644
--- a/include/asm-x86/ptrace.h
+++ b/include/asm-x86/ptrace.h
@@ -36,23 +36,23 @@ struct pt_regs {
#else /* __KERNEL__ */
struct pt_regs {
- long bx;
- long cx;
- long dx;
- long si;
- long di;
- long bp;
+ unsigned long bx;
+ unsigned long cx;
+ unsigned long dx;
+ unsigned long si;
+ unsigned long di;
+ unsigned long bp;
long ax;
- int ds;
- int es;
- int fs;
+ unsigned long ds;
+ unsigned long es;
+ unsigned long fs;
/* int gs; */
long orig_ax;
- long ip;
- int cs;
- long flags;
- long sp;
- int ss;
+ unsigned long ip;
+ unsigned long cs;
+ unsigned long flags;
+ unsigned long sp;
+ unsigned long ss;
};
#include <asm/vm86.h>
--
1.5.4.1219.g65b9
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 1/9] x86: change most X86_32 pt_regs members to unsigned long
2008-02-08 20:09 [PATCH 1/9] x86: change most X86_32 pt_regs members to unsigned long Harvey Harrison
@ 2008-02-08 21:13 ` Alexey Dobriyan
2008-02-08 21:17 ` H. Peter Anvin
2008-02-17 14:00 ` Thomas Gleixner
1 sibling, 1 reply; 4+ messages in thread
From: Alexey Dobriyan @ 2008-02-08 21:13 UTC (permalink / raw)
To: Harvey Harrison
Cc: Ingo Molnar, Roland McGrath, H. Peter Anvin, Thomas Gleixner, LKML
On Fri, Feb 08, 2008 at 12:09:56PM -0800, Harvey Harrison wrote:
> All but ax and orig_ax can move with no changes.
> --- a/include/asm-x86/ptrace.h
> +++ b/include/asm-x86/ptrace.h
> @@ -36,23 +36,23 @@ struct pt_regs {
> #else /* __KERNEL__ */
>
> struct pt_regs {
> - long bx;
> - long cx;
> - long dx;
> - long si;
> - long di;
> - long bp;
> + unsigned long bx;
> + unsigned long cx;
> + unsigned long dx;
> + unsigned long si;
> + unsigned long di;
> + unsigned long bp;
> long ax;
> - int ds;
> - int es;
> - int fs;
> + unsigned long ds;
> + unsigned long es;
> + unsigned long fs;
> /* int gs; */
> long orig_ax;
> - long ip;
> - int cs;
> - long flags;
> - long sp;
> - int ss;
> + unsigned long ip;
> + unsigned long cs;
> + unsigned long flags;
> + unsigned long sp;
> + unsigned long ss;
Why?! You don't have even minimal chances to unify pt_regs for i386 and
x86_64.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 1/9] x86: change most X86_32 pt_regs members to unsigned long
2008-02-08 21:13 ` Alexey Dobriyan
@ 2008-02-08 21:17 ` H. Peter Anvin
0 siblings, 0 replies; 4+ messages in thread
From: H. Peter Anvin @ 2008-02-08 21:17 UTC (permalink / raw)
To: Alexey Dobriyan
Cc: Harvey Harrison, Ingo Molnar, Roland McGrath, Thomas Gleixner, LKML
Alexey Dobriyan wrote:
> Why?! You don't have even minimal chances to unify pt_regs for i386 and
> x86_64.
The structure itself, no. Some of the users may very well be candidates
for unification, however.
-hpa
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 1/9] x86: change most X86_32 pt_regs members to unsigned long
2008-02-08 20:09 [PATCH 1/9] x86: change most X86_32 pt_regs members to unsigned long Harvey Harrison
2008-02-08 21:13 ` Alexey Dobriyan
@ 2008-02-17 14:00 ` Thomas Gleixner
1 sibling, 0 replies; 4+ messages in thread
From: Thomas Gleixner @ 2008-02-17 14:00 UTC (permalink / raw)
To: Harvey Harrison; +Cc: Ingo Molnar, Roland McGrath, H. Peter Anvin, LKML
on Fri, 8 Feb 2008, Harvey Harrison wrote:
> All but ax and orig_ax can move with no changes.
>
> Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Applied. Thanks,
tglx
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2008-02-17 14:01 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-02-08 20:09 [PATCH 1/9] x86: change most X86_32 pt_regs members to unsigned long Harvey Harrison
2008-02-08 21:13 ` Alexey Dobriyan
2008-02-08 21:17 ` H. Peter Anvin
2008-02-17 14:00 ` Thomas Gleixner
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).