From owner-svn-src-all@FreeBSD.ORG Sun Jun 7 20:51:32 2009 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 19B5C1065672; Sun, 7 Jun 2009 20:51:32 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 07E838FC1B; Sun, 7 Jun 2009 20:51:32 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id n57KpVAC005146; Sun, 7 Jun 2009 20:51:31 GMT (envelope-from rwatson@svn.freebsd.org) Received: (from rwatson@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id n57KpVtF005145; Sun, 7 Jun 2009 20:51:31 GMT (envelope-from rwatson@svn.freebsd.org) Message-Id: <200906072051.n57KpVtF005145@svn.freebsd.org> From: Robert Watson Date: Sun, 7 Jun 2009 20:51:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r193650 - head/sys/rpc X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Jun 2009 20:51:33 -0000 Author: rwatson Date: Sun Jun 7 20:51:31 2009 New Revision: 193650 URL: http://svn.freebsd.org/changeset/base/193650 Log: Add a temporary workaround for panics being seen on NFS servers with ZFS, where an improperly initialized prison field could lead to a panic. This is not the correct solution, since it fails to address similar problems for both AUDIT and MAC, which also rely on properly initialized credentials, but should reduce panic reports while we work that out. Reported by: ps, kan, others Modified: head/sys/rpc/svc_auth.c Modified: head/sys/rpc/svc_auth.c ============================================================================== --- head/sys/rpc/svc_auth.c Sun Jun 7 20:38:41 2009 (r193649) +++ head/sys/rpc/svc_auth.c Sun Jun 7 20:51:31 2009 (r193650) @@ -48,6 +48,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -181,6 +182,8 @@ svc_getcred(struct svc_req *rqst, struct for (i = 0; i < xcr->cr_ngroups; i++) cr->cr_groups[i] = xcr->cr_groups[i]; cr->cr_rgid = cr->cr_svgid = cr->cr_groups[0]; + cr->cr_prison = &prison0; + prison_hold(cr->cr_prison); *crp = cr; return (TRUE);