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	[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).