From owner-cvs-src-old@FreeBSD.ORG Sat Jun 5 16:01:19 2010 Return-Path: <owner-cvs-src-old@FreeBSD.ORG> Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DA855106566B for <cvs-src-old@freebsd.org>; Sat, 5 Jun 2010 16:01:19 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repoman.freebsd.org (unknown [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id ABD6B8FC18 for <cvs-src-old@freebsd.org>; Sat, 5 Jun 2010 16:01:19 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id o55G1JYi094601 for <cvs-src-old@freebsd.org>; Sat, 5 Jun 2010 16:01:19 GMT (envelope-from kib@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id o55G1Jx9094600 for cvs-src-old@freebsd.org; Sat, 5 Jun 2010 16:01:19 GMT (envelope-from kib@repoman.freebsd.org) Message-Id: <201006051601.o55G1Jx9094600@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to kib@repoman.freebsd.org using -f From: Konstantin Belousov <kib@FreeBSD.org> Date: Sat, 5 Jun 2010 15:59:59 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/amd64/acpica acpi_wakeup.c src/sys/amd64/amd64 cpu_switch.S fpu.c machdep.c mp_machdep.c trap.c vm_machdep.c src/sys/amd64/ia32 ia32_reg.c src/sys/amd64/include fpu.h pcb.h src/sys/i386/i386 machdep.c ptrace_machdep.c swtch.s trap.c ... X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree <cvs-src-old.freebsd.org> List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/cvs-src-old>, <mailto:cvs-src-old-request@freebsd.org?subject=unsubscribe> List-Archive: <http://lists.freebsd.org/pipermail/cvs-src-old> List-Post: <mailto:cvs-src-old@freebsd.org> List-Help: <mailto:cvs-src-old-request@freebsd.org?subject=help> List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/cvs-src-old>, <mailto:cvs-src-old-request@freebsd.org?subject=subscribe> X-List-Received-Date: Sat, 05 Jun 2010 16:01:19 -0000 kib 2010-06-05 15:59:59 UTC FreeBSD src repository Modified files: sys/amd64/acpica acpi_wakeup.c sys/amd64/amd64 cpu_switch.S fpu.c machdep.c mp_machdep.c trap.c vm_machdep.c sys/amd64/ia32 ia32_reg.c sys/amd64/include fpu.h pcb.h sys/i386/i386 machdep.c ptrace_machdep.c swtch.s trap.c vm_machdep.c sys/i386/include npx.h pcb.h sys/i386/isa npx.c sys/i386/linux linux_ptrace.c sys/pc98/pc98 machdep.c Log: SVN rev 208833 on 2010-06-05 15:59:59Z by kib Introduce the x86 kernel interfaces to allow kernel code to use FPU/SSE hardware. Caller should provide a save area that is chained into the stack of the areas; pcb save_area for usermode FPU state is on top. The pcb now contains a pointer to the current FPU saved area, used during FPUDNA handling and context switches. There is also a facility to allow the kernel thread to use pcb save_area. Change the dreaded warnings "npxdna in kernel mode!" into the panics when FPU usage is not registered. KPI discussed with: fabient Tested by: pho, fabient Hardware provided by: Sentex Communications MFC after: 1 month Revision Changes Path 1.29 +1 -1 src/sys/amd64/acpica/acpi_wakeup.c 1.170 +3 -3 src/sys/amd64/amd64/cpu_switch.S 1.166 +133 -9 src/sys/amd64/amd64/fpu.c 1.718 +8 -5 src/sys/amd64/amd64/machdep.c 1.314 +1 -1 src/sys/amd64/amd64/mp_machdep.c 1.345 +22 -8 src/sys/amd64/amd64/trap.c 1.269 +8 -3 src/sys/amd64/amd64/vm_machdep.c 1.7 +2 -2 src/sys/amd64/ia32/ia32_reg.c 1.36 +24 -0 src/sys/amd64/include/fpu.h 1.73 +4 -1 src/sys/amd64/include/pcb.h 1.700 +9 -7 src/sys/i386/i386/machdep.c 1.7 +1 -1 src/sys/i386/i386/ptrace_machdep.c 1.159 +3 -4 src/sys/i386/i386/swtch.s 1.330 +23 -9 src/sys/i386/i386/trap.c 1.301 +9 -4 src/sys/i386/i386/vm_machdep.c 1.34 +21 -0 src/sys/i386/include/npx.h 1.58 +4 -1 src/sys/i386/include/pcb.h 1.181 +158 -19 src/sys/i386/isa/npx.c 1.19 +2 -2 src/sys/i386/linux/linux_ptrace.c 1.422 +4 -4 src/sys/pc98/pc98/machdep.c