From owner-cvs-all@FreeBSD.ORG Tue Dec 9 01:52:16 2003 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5229E16A4CF; Tue, 9 Dec 2003 01:52:16 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A968C43D1F; Tue, 9 Dec 2003 01:52:15 -0800 (PST) (envelope-from marcel@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hB99qFXJ074960; Tue, 9 Dec 2003 01:52:15 -0800 (PST) (envelope-from marcel@repoman.freebsd.org) Received: (from marcel@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hB99qFgE074959; Tue, 9 Dec 2003 01:52:15 -0800 (PST) (envelope-from marcel) Message-Id: <200312090952.hB99qFgE074959@repoman.freebsd.org> From: Marcel Moolenaar Date: Tue, 9 Dec 2003 01:52:15 -0800 (PST) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/ia64/ia64 trap.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Dec 2003 09:52:16 -0000 marcel 2003/12/09 01:52:15 PST FreeBSD src repository Modified files: sys/ia64/ia64 trap.c Log: Don't panic for misalignment traps when the onfault handler is set. Not all transfers between kernel and user space are byte oriented and thus alignment safe. Especially fuword*() and suword*() are sensitive to alignment but in general more optimal than block copies. By catching the misalignment trap we avoid pessimizing the common case of properly aligned memory accesses which we would do if we were to use byte copies or adding tests for proper alignment. Note that the expectation that the kernel produces aligned pointers is unchanged. This change therefore relates to possible unaligned pointers generated in userland. Revision Changes Path 1.95 +10 -1 src/sys/ia64/ia64/trap.c