From owner-freebsd-hackers@FreeBSD.ORG Sat Jul 29 19:10:53 2006 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8C3F316A4E1 for ; Sat, 29 Jul 2006 19:10:53 +0000 (UTC) (envelope-from tijl@ulyssis.org) Received: from outmx009.isp.belgacom.be (outmx009.isp.belgacom.be [195.238.5.4]) by mx1.FreeBSD.org (Postfix) with ESMTP id 44CAF43D5C for ; Sat, 29 Jul 2006 19:10:50 +0000 (GMT) (envelope-from tijl@ulyssis.org) Received: from outmx009.isp.belgacom.be (localhost [127.0.0.1]) by outmx009.isp.belgacom.be (8.12.11.20060308/8.12.11/Skynet-OUT-2.22) with ESMTP id k6TJAg4C030636 for ; Sat, 29 Jul 2006 21:10:42 +0200 (envelope-from ) Received: from kalimero.kotnet.org (64.211-245-81.adsl-dyn.isp.belgacom.be [81.245.211.64]) by outmx009.isp.belgacom.be (8.12.11.20060308/8.12.11/Skynet-OUT-2.22) with ESMTP id k6TJAdCH030602 for ; Sat, 29 Jul 2006 21:10:39 +0200 (envelope-from ) Received: from kalimero.kotnet.org (kalimero.kotnet.org [127.0.0.1]) by kalimero.kotnet.org (8.13.6/8.13.6) with ESMTP id k6TJAcvL014021 for ; Sat, 29 Jul 2006 21:10:39 +0200 (CEST) (envelope-from tijl@ulyssis.org) From: Tijl Coosemans To: freebsd-hackers@freebsd.org Date: Sat, 29 Jul 2006 21:10:32 +0200 User-Agent: KMail/1.9.3 MIME-Version: 1.0 Content-Type: multipart/signed; boundary="nextPart10993165.DIXgWSgbTg"; protocol="application/pgp-signature"; micalg=pgp-sha1 Content-Transfer-Encoding: 7bit Message-Id: <200607292110.37733.tijl@ulyssis.org> Subject: i386 page fault clobbers error code in trap frame X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 29 Jul 2006 19:10:53 -0000 --nextPart10993165.DIXgWSgbTg Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline I'm refering to the following two lines in sys/i386/i386/trap.c /* kludge to pass faulting virtual address to sendsig */ frame->tf_err =3D eva; Isn't there some other way to do this? Wouldn't the address still be=20 available in %cr2 inside sendsig? Or could there have been other page=20 faults by then? The reason I'm asking this is that Wine wants to know the error code in=20 case of a page fault (the No eXec bit (AMD) and the read/write bit=20 specifically). --nextPart10993165.DIXgWSgbTg Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.4 (FreeBSD) iD8DBQBEy7KtdMR2xnarec8RAl9QAKCCc2Hqen6/xYDyqbXMdBu2sBlHjwCg0tQx LXotmZDebQV/s/nj3T4B+aM= =vxez -----END PGP SIGNATURE----- --nextPart10993165.DIXgWSgbTg--