From owner-cvs-src-old@FreeBSD.ORG Thu Aug 27 17:45:30 2009 Return-Path: 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 DD13E106568D for ; Thu, 27 Aug 2009 17:45:30 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id ADF708FC1C for ; Thu, 27 Aug 2009 17:45:30 +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 n7RHjUr4076795 for ; Thu, 27 Aug 2009 17:45:30 GMT (envelope-from bz@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n7RHjU11076794 for cvs-src-old@freebsd.org; Thu, 27 Aug 2009 17:45:30 GMT (envelope-from bz@repoman.freebsd.org) Message-Id: <200908271745.n7RHjU11076794@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to bz@repoman.freebsd.org using -f From: "Bjoern A. Zeeb" Date: Thu, 27 Aug 2009 17:36:59 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: RELENG_7 Subject: cvs commit: src/sys/amd64/amd64 elf_machdep.c trap.c src/sys/amd64/linux32 linux32_sysvec.c src/sys/compat/ia32 ia32_sysvec.c src/sys/i386/i386 elf_machdep.c trap.c src/sys/i386/linux linux_sysvec.c src/sys/kern imgact_elf.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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 Aug 2009 17:45:30 -0000 bz 2009-08-27 17:36:59 UTC FreeBSD src repository Modified files: (Branch: RELENG_7) sys/amd64/amd64 elf_machdep.c trap.c sys/amd64/linux32 linux32_sysvec.c sys/compat/ia32 ia32_sysvec.c sys/i386/i386 elf_machdep.c trap.c sys/i386/linux linux_sysvec.c sys/kern imgact_elf.c sys/sys imgact_elf.h Log: SVN rev 196602 on 2009-08-27 17:36:59Z by bz MFC r196512: Fix handling of .note.ABI-tag section for GNU systems [1]. Handle GNU/Linux according to LSB Core Specification 4.0, Chapter 11. Object Format, 11.8. ABI note tag. Also check the first word of desc, not only name, according to glibc abi-tags specification to distinguish between Linux and kFreeBSD. Add explicit handling for Debian GNU/kFreeBSD, which runs on our kernels as well [2]. In {amd64,i386}/trap.c, when checking osrel of the current process, also check the ABI to not change the signal behaviour for Linux binary processes, now that we save an osrel version for all three from the lists above in struct proc [2] (slightly different to HEAD). These changes make it possible to run FreeBSD, Debian GNU/kFreeBSD and Linux binaries on the same machine again for at least i386 and amd64, and no longer break kFreeBSD which was detected as GNU(/Linux). PR: kern/135468 Submitted by: dchagin [1] (initial patch) Suggested by: kib [2] Tested by: Petr Salinger (Petr.Salinger seznam.cz) for kFreeBSD Reviewed by: kib Revision Changes Path 1.26.2.4 +17 -0 src/sys/amd64/amd64/elf_machdep.c 1.319.2.10 +15 -1 src/sys/amd64/amd64/trap.c 1.31.2.13 +30 -5 src/sys/amd64/linux32/linux32_sysvec.c 1.27.2.5 +15 -0 src/sys/compat/ia32/ia32_sysvec.c 1.22.2.4 +16 -0 src/sys/i386/i386/elf_machdep.c 1.307.2.4 +6 -1 src/sys/i386/i386/trap.c 1.150.2.11 +30 -5 src/sys/i386/linux/linux_sysvec.c 1.178.2.8 +54 -6 src/sys/kern/imgact_elf.c 1.29.2.3 +5 -1 src/sys/sys/imgact_elf.h