From owner-svn-src-vendor@FreeBSD.ORG Sat Oct 4 07:37:17 2014 Return-Path: Delivered-To: svn-src-vendor@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EB061A40; Sat, 4 Oct 2014 07:37:17 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D720FDE3; Sat, 4 Oct 2014 07:37:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id s947bHeX084560; Sat, 4 Oct 2014 07:37:17 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id s947bHS8084559; Sat, 4 Oct 2014 07:37:17 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201410040737.s947bHS8084559@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Sat, 4 Oct 2014 07:37:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r272498 - vendor-sys/illumos/dist/uts/common/fs/zfs X-SVN-Group: vendor-sys MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 04 Oct 2014 07:37:18 -0000 Author: delphij Date: Sat Oct 4 07:37:17 2014 New Revision: 272498 URL: https://svnweb.freebsd.org/changeset/base/272498 Log: 5149 zvols need a way to ignore DKIOCFREE Reviewed by: Adam Leventhal Reviewed by: Matthew Ahrens Reviewed by: Sebastien Roy Reviewed by: Dan McDonald Reviewed by: Saso Kiselkov Approved by: Robert Mustacchi Author: George Wilson illumos/illumos-gate@893c83ba3e1c87a785b5274ce2ef02f45fba6087 Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zvol.c Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zvol.c ============================================================================== --- vendor-sys/illumos/dist/uts/common/fs/zfs/zvol.c Sat Oct 4 07:35:50 2014 (r272497) +++ vendor-sys/illumos/dist/uts/common/fs/zfs/zvol.c Sat Oct 4 07:37:17 2014 (r272498) @@ -142,6 +142,11 @@ typedef struct zvol_state { */ int zvol_maxphys = DMU_MAX_ACCESS/2; +/* + * Toggle unmap functionality. + */ +boolean_t zvol_unmap_enabled = B_TRUE; + extern int zfs_set_prop_nvlist(const char *, zprop_source_t, nvlist_t *, nvlist_t *); static int zvol_remove_zv(zvol_state_t *); @@ -1769,6 +1774,9 @@ zvol_ioctl(dev_t dev, int cmd, intptr_t dkioc_free_t df; dmu_tx_t *tx; + if (!zvol_unmap_enabled) + break; + if (ddi_copyin((void *)arg, &df, sizeof (df), flag)) { error = SET_ERROR(EFAULT); break;