Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Nov 2013 10:58:26 +0000 (UTC)
From:      Andriy Gapon <avg@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org
Subject:   svn commit: r258376 - vendor-sys/illumos/dist/uts/common/fs/zfs/sys
Message-ID:  <201311201058.rAKAwQH7056828@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: avg
Date: Wed Nov 20 10:58:25 2013
New Revision: 258376
URL: http://svnweb.freebsd.org/changeset/base/258376

Log:
  3964 L2ARC should always compress metadata buffers
  
  illumos/illumos-gate@e4be62a2b74a8f09bb669217a1a39eee069b13a1

Modified:
  vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dbuf.h
  vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dmu.h
  vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dmu_objset.h

Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dbuf.h
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dbuf.h	Wed Nov 20 10:57:45 2013	(r258375)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dbuf.h	Wed Nov 20 10:58:25 2013	(r258376)
@@ -329,7 +329,8 @@ boolean_t dbuf_is_metadata(dmu_buf_impl_
 	((_db)->db_objset->os_secondary_cache == ZFS_CACHE_METADATA)))
 
 #define	DBUF_IS_L2COMPRESSIBLE(_db)					\
-	((_db)->db_objset->os_compress != ZIO_COMPRESS_OFF)
+	((_db)->db_objset->os_compress != ZIO_COMPRESS_OFF ||		\
+	(dbuf_is_metadata(_db) && zfs_mdcomp_disable == B_FALSE))
 
 #ifdef ZFS_DEBUG
 

Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dmu.h
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dmu.h	Wed Nov 20 10:57:45 2013	(r258375)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dmu.h	Wed Nov 20 10:58:25 2013	(r258376)
@@ -24,6 +24,7 @@
  * Copyright (c) 2013 by Delphix. All rights reserved.
  * Copyright 2011 Nexenta Systems, Inc. All rights reserved.
  * Copyright (c) 2012, Joyent, Inc. All rights reserved.
+ * Copyright 2013 DEY Storage Systems, Inc.
  */
 
 /* Portions Copyright 2010 Robert Milkowski */
@@ -806,6 +807,8 @@ int dmu_diff(const char *tosnap_name, co
 #define	ZFS_CRC64_POLY	0xC96C5795D7870F42ULL	/* ECMA-182, reflected form */
 extern uint64_t zfs_crc64_table[256];
 
+extern int zfs_mdcomp_disable;
+
 #ifdef	__cplusplus
 }
 #endif

Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dmu_objset.h
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dmu_objset.h	Wed Nov 20 10:57:45 2013	(r258375)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dmu_objset.h	Wed Nov 20 10:58:25 2013	(r258376)
@@ -130,7 +130,7 @@ struct objset {
 	((os)->os_secondary_cache == ZFS_CACHE_ALL ||		\
 	(os)->os_secondary_cache == ZFS_CACHE_METADATA)
 
-#define	DMU_OS_IS_L2COMPRESSIBLE(os)	((os)->os_compress != ZIO_COMPRESS_OFF)
+#define	DMU_OS_IS_L2COMPRESSIBLE(os)	(zfs_mdcomp_disable == B_FALSE)
 
 /* called from zpl */
 int dmu_objset_hold(const char *name, void *tag, objset_t **osp);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201311201058.rAKAwQH7056828>