From owner-cvs-src@FreeBSD.ORG Tue Oct 14 22:19:49 2003 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7A28F16A4B3; Tue, 14 Oct 2003 22:19:49 -0700 (PDT) Received: from mail.pcnet.com (mail.pcnet.com [204.213.232.4]) by mx1.FreeBSD.org (Postfix) with ESMTP id 85C7F43F93; Tue, 14 Oct 2003 22:19:48 -0700 (PDT) (envelope-from eischen@vigrid.com) Received: from mail.pcnet.com (mail.pcnet.com [204.213.232.4]) by mail.pcnet.com (8.12.10/8.12.1) with ESMTP id h9F5Jirq017439; Wed, 15 Oct 2003 01:19:44 -0400 (EDT) Date: Wed, 15 Oct 2003 01:19:44 -0400 (EDT) From: Daniel Eischen X-Sender: eischen@pcnet5.pcnet.com To: Peter Wemm In-Reply-To: <20031015032029.0AB9A2A8DF@canning.wemm.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: David Xu cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org cc: cvs-src@FreeBSD.org Subject: Re: cvs commit: src/sys/amd64/amd64 exception.S trap.c src/sys/amd64/include frame.h signal.h ucontext.h X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: deischen@FreeBSD.org List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Oct 2003 05:19:49 -0000 On Tue, 14 Oct 2003, Peter Wemm wrote: > David Xu wrote: > > > > Modified files: > > > sys/amd64/amd64 exception.S trap.c > > > sys/amd64/include frame.h signal.h ucontext.h > > > Log: > > > Pull the tier-2 card one last time and break the get/setcontext and > > > sigreturn() ABI and the signal context on the stack. > ... > > The change you made to ucontext.h breaks libkse. :-( > > Yep. And probably libc_r as well, but I'm not sure about that one yet. I'll > take a shot at patching it up when I get home if nobody beats me to it. :-) Here's a quick attempt at a fix for libpthread. -- Dan Eischen %%%%% Index: context.S =================================================================== RCS file: /opt/FreeBSD/cvs/src/lib/libpthread/arch/amd64/amd64/context.S,v retrieving revision 1.3 diff -u -r1.3 context.S --- context.S 16 Sep 2003 00:00:53 -0000 1.3 +++ context.S 15 Oct 2003 11:00:39 -0000 @@ -79,10 +79,10 @@ * Where do we define these? */ #define MC_SIZE 800 /* sizeof mcontext_t */ -#define MC_LEN_OFFSET (24*8) /* offset to mc_len from mcontext */ -#define MC_FPFMT_OFFSET (25*8) /* offset to mc_fpformat from mcontext */ -#define MC_FPFMT_NODEV 0x10000 -#define MC_OWNEDFP_OFFSET (26*8) /* offset to mc_ownedfp from mcontext */ +#define MC_LEN_OFFSET (25*8) /* offset to mc_len from mcontext */ +#define MC_FPFMT_OFFSET (26*8) /* offset to mc_fpformat from mcontext */ +#define MC_FPFMT_NODEV 0x10000 +#define MC_OWNEDFP_OFFSET (27*8) /* offset to mc_ownedfp from mcontext */ #define MC_OWNEDFP_NONE 0x20000 #define MC_OWNEDFP_FPU 0x20001 #define MC_OWNEDFP_PCB 0x20002 @@ -104,9 +104,10 @@ #define MC_R13 (13 * 8) #define MC_R14 (14 * 8) #define MC_R15 (15 * 8) -#define MC_RIP (19 * 8) -#define MC_RFLAGS (21 * 8) -#define MC_RSP (22 * 8) +#define MC_FLAGS (18 * 8) +#define MC_RIP (20 * 8) +#define MC_RFLAGS (22 * 8) +#define MC_RSP (23 * 8) /* * _amd64_ctx_save(mcontext_t *mcp) %%%%%