From owner-svn-src-head@freebsd.org Wed Jan 20 23:35:36 2016 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 24F6EA8BA9A; Wed, 20 Jan 2016 23:35:36 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from citadel.icyb.net.ua (citadel.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id C3BEF1957; Wed, 20 Jan 2016 23:35:34 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from porto.starpoint.kiev.ua (porto-e.starpoint.kiev.ua [212.40.38.100]) by citadel.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id BAA11899; Thu, 21 Jan 2016 01:35:33 +0200 (EET) (envelope-from avg@FreeBSD.org) Received: from localhost ([127.0.0.1]) by porto.starpoint.kiev.ua with esmtp (Exim 4.34 (FreeBSD)) id 1aM2Hl-0006jS-1C; Thu, 21 Jan 2016 01:35:33 +0200 Subject: Re: svn commit: r294329 - in head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: . sys To: Alan Somers References: <201601191700.u0JH0P6k061610@repo.freebsd.org> <569E6DA0.9010300@pix.net> <569F516D.80303@FreeBSD.org> Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" From: Andriy Gapon X-Enigmail-Draft-Status: N1110 Message-ID: <56A019A1.4030900@FreeBSD.org> Date: Thu, 21 Jan 2016 01:34:57 +0200 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 20 Jan 2016 23:35:36 -0000 On 20/01/2016 22:03, Alan Somers wrote: > On Wed, Jan 20, 2016 at 2:20 AM, Andriy Gapon wrote: >> On 19/01/2016 19:20, Alan Somers wrote: >>> The thing is, it never really worked in the first place. Panics and >>> deadlocks are so frequent that I don't think the feature was usable >>> for anybody. >> >> The feature is perfectly usable for me. I have never run into the problems that >> you describe. Why not fix the real bugs that you've run into? > > Spectra Logic and iXSystems both experienced many problems with this. > The worst is a deadlock that can be triggered simply by pulling a > drive from a redundant pool when there exists a zvol anywhere in the > system (see https://reviews.freebsd.org/D4998 for a quick way to > reproduce). Fixing it correctly would likely require far more time > than I have available. I just want the bugs to go away. See that > same code review for a change to make the feature optional. I think that we all want all the bugs to go way. One way to remove bugs is to remove (disable) code that contains bugs. That way the perfect bug-free software is clearly achievable :-) Unfortunately, that technique is not always welcomed. P.S. I think that the real problem here is that a method of a geom must never drop topology_lock. In other words, the GEOM management code (like g_xxx() stuff in geom_subr.c) expects that a topology can not change underneath it. But zvol_geom_access() clearly breaks that contract. -- Andriy Gapon