From owner-svn-src-projects@FreeBSD.ORG Tue Nov 29 19:47:11 2011 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EF43F1065677; Tue, 29 Nov 2011 19:47:11 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id DE6EE8FC15; Tue, 29 Nov 2011 19:47:11 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id pATJlB3e064174; Tue, 29 Nov 2011 19:47:11 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id pATJlBWC064172; Tue, 29 Nov 2011 19:47:11 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201111291947.pATJlBWC064172@svn.freebsd.org> From: Xin LI Date: Tue, 29 Nov 2011 19:47:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r228144 - projects/zfsd/head/cddl/sbin/zfsd X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Nov 2011 19:47:12 -0000 Author: delphij Date: Tue Nov 29 19:47:11 2011 New Revision: 228144 URL: http://svn.freebsd.org/changeset/base/228144 Log: Handle ZfsdException while parsing the pool and give more meaningful log instead of stopping and start over in the main loop. Modified: projects/zfsd/head/cddl/sbin/zfsd/dev_ctl_event.cc Modified: projects/zfsd/head/cddl/sbin/zfsd/dev_ctl_event.cc ============================================================================== --- projects/zfsd/head/cddl/sbin/zfsd/dev_ctl_event.cc Tue Nov 29 19:46:17 2011 (r228143) +++ projects/zfsd/head/cddl/sbin/zfsd/dev_ctl_event.cc Tue Nov 29 19:47:11 2011 (r228144) @@ -455,9 +455,18 @@ DevfsEvent::ReadLabel(int devFd, bool &i || devLabel == NULL) return (NULL); - Vdev vdev(devLabel); - degraded = vdev.State() != VDEV_STATE_HEALTHY; - return (devLabel); + try { + Vdev vdev(devLabel); + degraded = vdev.State() != VDEV_STATE_HEALTHY; + return (devLabel); + } catch (ZfsdException &exp) { + string devName = fdevname(devFd); + string devPath = _PATH_DEV + devName; + string context("DevfsEvent::ReadLabel: " + devPath + ": "); + + exp.GetString().insert(0, context); + exp.Log(); + } } return (NULL); }