Print this page
5056 ZFS deadlock on db_mtx and dn_holds
Reviewed by: Will Andrews <willa@spectralogic.com>
Reviewed by: Matt Ahrens <mahrens@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Approved by: Dan McDonald <danmcd@omniti.com>

@@ -20,10 +20,11 @@
  */
 /*
  * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
  * Copyright (c) 2012, 2014 by Delphix. All rights reserved.
  * Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
+ * Copyright (c) 2014 Spectra Logic Corporation, All rights reserved.
  */
 
 #ifndef _SYS_DBUF_H
 #define _SYS_DBUF_H
 

@@ -224,13 +225,12 @@
          */
         avl_node_t db_link;
 
         /* Data which is unique to data (leaf) blocks: */
 
-        /* stuff we store for the user (see dmu_buf_set_user) */
-        void *db_user_ptr;
-        dmu_buf_evict_func_t *db_evict_func;
+        /* User callback information. */
+        dmu_buf_user_t *db_user;
 
         uint8_t db_immediate_evict;
         uint8_t db_freed_in_flight;
 
         uint8_t db_dirtycnt;