mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 18:40:43 +03:00
Illumos 6267 - dn_bonus evicted too early
6267 dn_bonus evicted too early Reviewed by: Richard Yao <ryao@gentoo.org> Reviewed by: Xin LI <delphij@freebsd.org> Reviewed by: Matthew Ahrens <mahrens@delphix.com> Approved by: Richard Lowe <richlowe@richlowe.net> References: https://www.illumos.org/issues/6267 https://github.com/illumos/illumos-gate/commit/d205810 Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Ported-by: Ned Bass bass6@llnl.gov Issue #3865 Issue #3443
This commit is contained in:
committed by
Brian Behlendorf
parent
33df62d052
commit
bc4501f75a
+17
-1
@@ -230,9 +230,25 @@ typedef struct dmu_buf_impl {
|
||||
/* User callback information. */
|
||||
dmu_buf_user_t *db_user;
|
||||
|
||||
uint8_t db_immediate_evict;
|
||||
/*
|
||||
* Evict user data as soon as the dirty and reference
|
||||
* counts are equal.
|
||||
*/
|
||||
uint8_t db_user_immediate_evict;
|
||||
|
||||
/*
|
||||
* This block was freed while a read or write was
|
||||
* active.
|
||||
*/
|
||||
uint8_t db_freed_in_flight;
|
||||
|
||||
/*
|
||||
* dnode_evict_dbufs() or dnode_evict_bonus() tried to
|
||||
* evict this dbuf, but couldn't due to outstanding
|
||||
* references. Evict once the refcount drops to 0.
|
||||
*/
|
||||
uint8_t db_pending_evict;
|
||||
|
||||
uint8_t db_dirtycnt;
|
||||
} dmu_buf_impl_t;
|
||||
|
||||
|
||||
@@ -93,7 +93,6 @@ struct objset {
|
||||
uint8_t os_copies;
|
||||
enum zio_checksum os_dedup_checksum;
|
||||
boolean_t os_dedup_verify;
|
||||
boolean_t os_evicting;
|
||||
zfs_logbias_op_t os_logbias;
|
||||
zfs_cache_type_t os_primary_cache;
|
||||
zfs_cache_type_t os_secondary_cache;
|
||||
|
||||
Reference in New Issue
Block a user