From owner-svn-src-stable@FreeBSD.ORG Tue Dec 14 20:19:42 2010 Return-Path: Delivered-To: svn-src-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 23954106566B; Tue, 14 Dec 2010 20:19:42 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 062168FC15; Tue, 14 Dec 2010 20:19:42 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id oBEKJfYS029436; Tue, 14 Dec 2010 20:19:41 GMT (envelope-from jkim@svn.freebsd.org) Received: (from jkim@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id oBEKJf2k029433; Tue, 14 Dec 2010 20:19:41 GMT (envelope-from jkim@svn.freebsd.org) Message-Id: <201012142019.oBEKJf2k029433@svn.freebsd.org> From: Jung-uk Kim Date: Tue, 14 Dec 2010 20:19:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r216446 - in stable/8/sys/amd64: amd64 include X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Dec 2010 20:19:42 -0000 Author: jkim Date: Tue Dec 14 20:19:41 2010 New Revision: 216446 URL: http://svn.freebsd.org/changeset/base/216446 Log: MFC: r210780 Rearrange struct pcb to make better use of cache lines. Approved by: re (kib) Modified: stable/8/sys/amd64/amd64/genassym.c stable/8/sys/amd64/include/pcb.h Directory Properties: stable/8/sys/ (props changed) stable/8/sys/amd64/include/xen/ (props changed) stable/8/sys/cddl/contrib/opensolaris/ (props changed) stable/8/sys/contrib/dev/acpica/ (props changed) stable/8/sys/contrib/pf/ (props changed) Modified: stable/8/sys/amd64/amd64/genassym.c ============================================================================== --- stable/8/sys/amd64/amd64/genassym.c Tue Dec 14 20:13:30 2010 (r216445) +++ stable/8/sys/amd64/amd64/genassym.c Tue Dec 14 20:19:41 2010 (r216446) @@ -135,7 +135,6 @@ ASSYM(PCB_RIP, offsetof(struct pcb, pcb_ ASSYM(PCB_FSBASE, offsetof(struct pcb, pcb_fsbase)); ASSYM(PCB_GSBASE, offsetof(struct pcb, pcb_gsbase)); ASSYM(PCB_KGSBASE, offsetof(struct pcb, pcb_kgsbase)); -ASSYM(PCB_FLAGS, offsetof(struct pcb, pcb_flags)); ASSYM(PCB_CR0, offsetof(struct pcb, pcb_cr0)); ASSYM(PCB_CR2, offsetof(struct pcb, pcb_cr2)); ASSYM(PCB_CR3, offsetof(struct pcb, pcb_cr3)); @@ -146,6 +145,7 @@ ASSYM(PCB_DR2, offsetof(struct pcb, pcb_ ASSYM(PCB_DR3, offsetof(struct pcb, pcb_dr3)); ASSYM(PCB_DR6, offsetof(struct pcb, pcb_dr6)); ASSYM(PCB_DR7, offsetof(struct pcb, pcb_dr7)); +ASSYM(PCB_FLAGS, offsetof(struct pcb, pcb_flags)); ASSYM(PCB_ONFAULT, offsetof(struct pcb, pcb_onfault)); ASSYM(PCB_GS32SD, offsetof(struct pcb, pcb_gs32sd)); ASSYM(PCB_TSSP, offsetof(struct pcb, pcb_tssp)); Modified: stable/8/sys/amd64/include/pcb.h ============================================================================== --- stable/8/sys/amd64/include/pcb.h Tue Dec 14 20:13:30 2010 (r216445) +++ stable/8/sys/amd64/include/pcb.h Tue Dec 14 20:19:41 2010 (r216446) @@ -55,15 +55,6 @@ struct pcb { register_t pcb_fsbase; register_t pcb_gsbase; register_t pcb_kgsbase; - u_long pcb_flags; -#define PCB_DBREGS 0x02 /* process using debug registers */ -#define PCB_KERNFPU 0x04 /* kernel uses fpu */ -#define PCB_FPUINITDONE 0x08 /* fpu state is initialized */ -#define PCB_USERFPUINITDONE 0x10 /* fpu user state is initialized */ -#define PCB_GS32BIT 0x20 /* linux gs switch */ -#define PCB_32BIT 0x40 /* process has 32 bit context (segs etc) */ -#define PCB_FULLCTX 0x80 /* full context restore on sysret */ - register_t pcb_cr0; register_t pcb_cr2; register_t pcb_cr3; @@ -75,6 +66,15 @@ struct pcb { register_t pcb_dr6; register_t pcb_dr7; + u_long pcb_flags; +#define PCB_DBREGS 0x02 /* process using debug registers */ +#define PCB_KERNFPU 0x04 /* kernel uses fpu */ +#define PCB_FPUINITDONE 0x08 /* fpu state is initialized */ +#define PCB_USERFPUINITDONE 0x10 /* fpu user state is initialized */ +#define PCB_GS32BIT 0x20 /* linux gs switch */ +#define PCB_32BIT 0x40 /* process has 32 bit context (segs etc) */ +#define PCB_FULLCTX 0x80 /* full context restore on sysret */ + uint16_t pcb_initial_fpucw; caddr_t pcb_onfault; /* copyin/out fault recovery */