Skip to content

Commit 6c9758e

Browse files
committed
updates libzfs + zfs files to report trim status as originally intended
1 parent 8162a35 commit 6c9758e

File tree

2 files changed

+37
-1
lines changed

2 files changed

+37
-1
lines changed

libzfs.pyx

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2078,7 +2078,13 @@ cdef class ZFSVdevStats(object):
20782078
'size': self.size,
20792079
'allocated': self.allocated,
20802080
'fragmentation': self.fragmentation,
2081-
'self_healed': self.self_healed
2081+
'self_healed': self.self_healed,
2082+
'trim_action_time': self.trim_action_time,
2083+
'trim_bytes_done': self.trim_bytes_done,
2084+
'trim_bytes_est': self.trim_bytes_est,
2085+
'trim_errors': self.trim_errors,
2086+
'trim_notsup': self.trim_notsup,
2087+
'trim_state': self.trim_state
20822088
}
20832089
IF HAVE_ZFS_VDEV_STAT_ASHIFT:
20842090
state.update({
@@ -2154,6 +2160,30 @@ cdef class ZFSVdevStats(object):
21542160
# This is in bytes
21552161
return self.vs.vs_self_healed
21562162

2163+
property trim_action_time:
2164+
def __get__(self):
2165+
return self.vs.vs_trim_action_time
2166+
2167+
property trim_bytes_done:
2168+
def __get__(self):
2169+
return self.vs.vs_trim_bytes_done
2170+
2171+
property trim_bytes_est:
2172+
def __get__(self):
2173+
return self.vs.vs_trim_bytes_est
2174+
2175+
property trim_errors:
2176+
def __get__(self):
2177+
return self.vs.vs_trim_errors
2178+
2179+
property trim_notsup:
2180+
def __get__(self):
2181+
return self.vs.vs_trim_notsup
2182+
2183+
property trim_state:
2184+
def __get__(self):
2185+
return self.vs.vs_trim_state
2186+
21572187

21582188
cdef class ZFSVdev(object):
21592189
cdef readonly ZFSPool zpool

pxd/zfs.pxd

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -514,6 +514,12 @@ cdef extern from "sys/fs/zfs.h" nogil:
514514
uint64_t vs_logical_ashift
515515
uint64_t vs_physical_ashift
516516
uint64_t vs_fragmentation
517+
uint64_t vs_trim_errors
518+
uint64_t vs_trim_notsup
519+
uint64_t vs_trim_bytes_done
520+
uint64_t vs_trim_bytes_est
521+
uint64_t vs_trim_state
522+
uint64_t vs_trim_action_time
517523

518524
ctypedef struct pool_scan_stat_t:
519525
uint64_t pss_func # pool_scan_func_t

0 commit comments

Comments
 (0)