From owner-cvs-src@FreeBSD.ORG Tue Dec 4 12:33:03 2007 Return-Path: Delivered-To: cvs-src@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6B78716A417; Tue, 4 Dec 2007 12:33:03 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5DEED13C457; Tue, 4 Dec 2007 12:33:03 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lB4CX3vc041916; Tue, 4 Dec 2007 12:33:03 GMT (envelope-from kib@repoman.freebsd.org) Received: (from kib@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lB4CX3E0041915; Tue, 4 Dec 2007 12:33:03 GMT (envelope-from kib) Message-Id: <200712041233.lB4CX3E0041915@repoman.freebsd.org> From: Konstantin Belousov Date: Tue, 4 Dec 2007 12:33:03 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/i386/i386 trap.c src/sys/amd64/amd64 trap.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Dec 2007 12:33:03 -0000 kib 2007-12-04 12:33:03 UTC FreeBSD src repository Modified files: sys/i386/i386 trap.c sys/amd64/amd64 trap.c Log: Fix the ABI change of the signal delivered on the access to the page with insufficient protection mode. For the i386 and amd64, create the tunable, machdep.prot_fault_translation, with the following behaviour: 0 = autodetect the signal to be delivered on KERN_PROTECTION_FAILURE from vm_fault based on the ELF OSABI note: no note or __FreeBSD_version < 700004 - SIGBUS/BUS_PAGE_FAULT note, and __FreeBSD_version >= 700004 - SIGSEGV/SEGV_ACCERR 1 = always SIGBUS/BUS_PAGE_FAULT 2 = always SIGSEGV/SEGV_ACCERR This would do mostly automatic correction of ABI breakage, with the exception of the untaged binaries for 7-CURRENT/RELENG_7 before the note is fixed. For them, sysctl would allow to run the binary with manual settings. Discussed with: portmgr (kris) PR: kern/118304 MFC after: 3 days Revision Changes Path 1.323 +29 -2 src/sys/amd64/amd64/trap.c 1.310 +29 -2 src/sys/i386/i386/trap.c