X-Recipient: archive-cygwin AT delorie DOT com DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:reply-to :references:mime-version:content-type:in-reply-to; q=dns; s= default; b=qKjSVqm2na1mzCKjxl3KwCbgy+Bl5jq+tvUUq9N/2Lsl3Iz4Hsrzh h7aQAw5kQWsFt+AxRftwNP6zYhE22FbUoB8DEpwwQ8RJwJP4A8WJ8nZBqFRi69NT PcToakuKh6mg+B0j73r/AIjzoydiWporUJZ+Sfo65mYuS3qGXHYLVg= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:reply-to :references:mime-version:content-type:in-reply-to; s=default; bh=0PYqlgA+AfcNYqxJRzkL0tPeWlQ=; b=u5tA2qzZSAXvy8B+jyMfRYGzBuSL 9A2LcsjVodF9CkyF/JvUYw5YvLA8Usq1PNkz+/satYI9P+PFcnqNfEHp0LxZ1uoI BvTLnm7+F7yYW6ECi7//YOMQ3zYg2C9RFQpTQDJ0RX9O/UKUYHn4Bhsm8ZAAdQ4P 6B8OD9UkxNM52A4= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.1 required=5.0 tests=AWL,BAYES_50,KAM_LAZY_DOMAIN_SECURITY,UNSUBSCRIBE_BODY,URIBL_BLACK autolearn=no version=3.3.2 X-HELO: calimero.vinschen.de Date: Wed, 15 Jul 2015 14:44:04 +0200 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: TEST RELEASE: Cygwin 2.1.0-0.4 Message-ID: <20150715124404.GP16720@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <20150705213417 DOT GH2918 AT calimero DOT vinschen DOT de> <70AD8D85-7D30-4894-857B-4FD12E55BBBE AT etr-usa DOT com> <55A58727 DOT 6060807 AT redhat DOT com> <55A5C073 DOT 1020401 AT cornell DOT edu> <20150715075117 DOT GA19844 AT calimero DOT vinschen DOT de> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="MiFvc8Vo6wRSORdP" Content-Disposition: inline In-Reply-To: <20150715075117.GA19844@calimero.vinschen.de> User-Agent: Mutt/1.5.23 (2014-03-12) --MiFvc8Vo6wRSORdP Content-Type: multipart/mixed; boundary="MZf7D3rAEoQgPanC" Content-Disposition: inline --MZf7D3rAEoQgPanC Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Jul 15 09:51, Corinna Vinschen wrote: > Hi guys, >=20 > On Jul 14 22:07, Ken Brown wrote: > > Entering directory > > '/home/kbrown/src/cyglibsigsegv/libsigsegv-2.10-1.x86_64/build/tests' > > Test passed. > > PASS: sigsegv1.exe > > Test passed. > > PASS: sigsegv2.exe > > Doing SIGSEGV pass 1. > > Stack overflow 1 caught. > > Doing SIGSEGV pass 2. > > Stack overflow 2 caught. > > Test passed. > > PASS: sigsegv3.exe > > SKIP: stackoverflow1.exe > > SKIP: stackoverflow2.exe >=20 > Any idea why these two tests have been skipped? That means the > HAVE_STACK_OVERFLOW_RECOVERY autoconf test failed. You removed cygwin > from the explicit >=20 > mingw* | cygwin*) sv_cv_have_stack_overflow_recovery=3Dyes ;; >=20 > which is the right thing to do, but that means CFG_LEAVE has been > set to leave-none.c, apparently. >=20 > I haven't much time to look into that right now, but will later today if > you don't beat me to it. Got it. What's needed is a Cygwin-specific fault-*.h file which exposes how to fetch the stack pointer register from mcontext_t. As you can see from the plethora of fault-*.h files in the src subdir, this is highly system-specific anyway. Here's the set of files you need to rebuild libsigsegv for Cygwin 2.1.0, with all tests running and passing on i686 and x86_64. No other patch is requied. So, who of you is going to maintain it? Thanks, Corinna --=20 Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat --MZf7D3rAEoQgPanC Content-Type: text/plain; charset=utf-8 Content-Disposition: attachment; filename="libsigsegv.cygport" Content-Transfer-Encoding: quoted-printable NAME=3D"libsigsegv" VERSION=3D"2.10" RELEASE=3D2 CATEGORY=3DLibs SUMMARY=3D"Handling page faults in user mode" DESCRIPTION=3D"Library for handling page faults in user mode. A page fault = occurs when a program tries to access to a region of memory that is currently not available. Mainly required to build clisp from source." HOMEPAGE=3D"http://libsigsegv.sourceforge.net/" # SRC_URI=3D"ftp://www.gnu.ftp.uni-erlangen.de/pub/gnu/${PN}/${PN}-${PV}.ta= r.gz" # SRC_URI=3D"http://puzzle.dl.sourceforge.net/sourceforge/${PN}/${PN}-${PV}= .tar.bz2" # SRC_URI=3D"ftp://ftp.gnu.org/pub/gnu/${PN}/${PN}-${PV}.tar.gz" SRC_URI=3D"http://ftpmirror.gnu.org/${PN}/${PN}-${PV}.tar.gz" DLLREV=3D2 MAKEOPTS=3D"-j1" CYGCONF_ARGS=3D"--enable-shared"=20 PKG_NAMES=3D"${PN} ${PN}${DLLREV}" PKG_CONTENTS[0]=3D"--exclude=3Dusr/bin/cygsigsegv-${DLLREV}.dll usr" PKG_CONTENTS[1]=3D"usr/bin/cygsigsegv-${DLLREV}.dll" --MZf7D3rAEoQgPanC Content-Type: text/plain; charset=utf-8 Content-Disposition: attachment; filename="libsigsegv-2.10-2.src.patch" Content-Transfer-Encoding: quoted-printable --- origsrc/libsigsegv-2.10/configure.ac 2011-04-03 17:30:16.000000000 +0200 +++ src/libsigsegv-2.10/configure.ac 2015-07-15 14:30:22.264452393 +0200 @@ -419,6 +419,9 @@ if test -z "$CFG_FAULT" && test "$sv_cv_ ;; esac ;; + cygwin*) + CFG_FAULT=3Dfault-cygwin-i386.h + ;; *) CFG_FAULT=3Dfault-posix-ucontext.h ;; @@ -522,16 +525,6 @@ case "$host_os" in FAULT_CONTEXT_INCLUDE=3D'#include ' CFG_FAULT=3Dfault-win32.h # nonexistent, just a dummy ;; - cygwin*) - FAULT_CONTEXT=3D'CONTEXT' - FAULT_CONTEXT_INCLUDE=3D'#include ' - # Cygwin 1.7 uses fault-posix.h. Cygwin 1.5.x needs a hacky workaround. - if test -z "$CFG_FAULT"; then - CFG_FAULT=3Dfault-cygwin-old.h - AC_DEFINE([OLD_CYGWIN_WORKAROUND], [1], - [Define to 1 on Cygwin versions older than 1.7.]) - fi - ;; esac if test -n "$CFG_FAULT"; then sv_cv_have_sigsegv_recovery=3Dyes @@ -858,7 +851,7 @@ AC_CACHE_CHECK([if the system supports c sv_cv_have_stack_overflow_recovery=3Dyes else case "$host_os" in - mingw* | cygwin*) sv_cv_have_stack_overflow_recovery=3Dyes ;; + mingw*) sv_cv_have_stack_overflow_recovery=3Dyes ;; *) if test "$CFG_LEAVE" !=3D 'leave-none.c'; then if test "$sv_cv_sigaltstack" !=3D no; then @@ -927,7 +920,7 @@ dnl Requires AC_CANONICAL_HOST, CFG_HAND dnl HAVE_SIGSEGV_RECOVERY, HAVE_STACK_OVERFLOW_RECOVERY. =20 case "$host_os" in - mingw* | cygwin*) CFG_HANDLER=3Dhandler-win32.c ;; + mingw*) CFG_HANDLER=3Dhandler-win32.c ;; *) if test -z "$CFG_HANDLER"; then if test $sv_cv_have_sigsegv_recovery =3D no \ --- origsrc/libsigsegv-2.10/src/fault-cygwin-i386.h 1970-01-01 01:00:00.000= 000000 +0100 +++ src/libsigsegv-2.10/src/fault-cygwin-i386.h 2015-07-15 14:30:47.5623414= 12 +0200 @@ -0,0 +1,33 @@ +/* Fault handler information. Cygwin/i386 and Cygwin/x86_64 version. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + +#include "fault-posix-ucontext.h" + +#if defined __x86_64__ +/* 64 bit registers */ + +/* See winsup/cygwin/include/cygwin/signal.h */ + +# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.rsp + +#else +/* 32 bit registers */ + +/* See winsup/cygwin/include/cygwin/signal.h */ + +# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.esp + +#endif --MZf7D3rAEoQgPanC-- --MiFvc8Vo6wRSORdP Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJVplWUAAoJEPU2Bp2uRE+gCjUP/2ewtAELCnaVfUIW4xWbQqb5 Vyw6qZbWVZ7WoCFMSAn0APQL5dCVCK5Q+B+9Pa4f5bDFbqYfeJHssHNJ/P4cmQHw dZ6sw+aEObtKLn4O8Cqol0L/g+3v4v0LlFjHoKkdHIDYUsbXD0bpe4mGmE7CwOnB XwdliNX8hLUCLCmKb7gqXplXt9D1EuVS+OUra9cDfCNoSrCSDwoH89mbXCNXgYOo 5T2z2GW+q3hyrfqAWhH+ny9+acLymUHdL7q/aynyV9tW1YVs5iFxpDudz6S2f3w0 xYNEMe0A+2jVEuD/zifKSv6RhbWrQQjTMOwqSsXSsqtjDUmKX9mH8DOMqZTg/933 +o+LQdE1ao2wvKM+3aGIEgRWHWKEpS35RiYKB0/HCSUeFP76aaoB+mNEhAELTtv9 ZwtIPRfAyw6tTGBDqO8wCwlT+BCWG/7u1gX9eOV3vljuCpqSAbKUwKyzD2TGoItu cQijQb8QffxB9vH/ePLcPPLGkoxZlv8KVVgwZhJdrnl2dEC2yDVZRVBH31ITr5Q+ e2vtCPUvhBMR37+oMqlKW8TcjrPV8DE5M5PKSKarxjLx4Ej8kyF/r8YqBjCdfiEB QUQbFvlFOfWKBTfS3cz0fMczYWElf+Gxs1OgSXiMcFcS5GDoKQLJYPPhZrcpm/SM HA1dLDE+K/V9aOBcqkYx =6Sk2 -----END PGP SIGNATURE----- --MiFvc8Vo6wRSORdP--