[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080428154240.GD7334@c2.user-mode-linux.org>
Date: Mon, 28 Apr 2008 11:42:40 -0400
From: Jeff Dike <jdike@...toit.com>
To: WANG Cong <xiyou.wangcong@...il.com>
Cc: akpm@...l.org, linux-kernel@...r.kernel.org,
user-mode-linux-devel@...ts.sourceforge.net
Subject: Re: [PATCH 9/19] UML - Tidy ptrace interface
On Sat, Apr 26, 2008 at 05:35:38PM +0800, WANG Cong wrote:
> From: Jeff Dike <jdike@...toit.com>
> Date: Fri, 25 Apr 2008 13:56:10 -0400
> > Tidy the ptrace interface code. Removed a bunch of unused macros.
> > Started converting register sets from arrays of longs to structures.
>
> Could you please explain a bit why do this? I think long arrary is OK.
It's wrong on x86_64. There, FRAME_SIZE is 168 -
#define FRAME_SIZE
and SS is the last register defined -
#define SS 160
but there are a number of registers beyond that in the user_regs_struct:
unsigned long ss;
unsigned long fs_base;
unsigned long gs_base;
unsigned long ds;
unsigned long es;
unsigned long fs;
unsigned long gs;
The effect of GETREGS into a long[FRAME_SIZE] will be stack corruption.
Jeff
--
Work email - jdike at linux dot intel dot com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists