mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-11-17 10:01:01 +03:00
Illumos #3588
3588 provide zfs properties for logical (uncompressed) space used and referenced Reviewed by: Adam Leventhal <ahl@delphix.com> Reviewed by: George Wilson <george.wilson@delphix.com> Reviewed by: Dan McDonald <danmcd@nexenta.com> Reviewed by: Richard Elling <richard.elling@dey-sys.com> Approved by: Richard Lowe <richlowe@richlowe.net> References: https://www.illumos.org/issues/3588 illumos/illumos-gate@77372cb0f3 Ported-by: Richard Yao <ryao@gentoo.org> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
This commit is contained in:
parent
c2e42f9d53
commit
24a64651b4
@ -138,6 +138,8 @@ typedef enum {
|
|||||||
ZFS_PROP_REFRATIO,
|
ZFS_PROP_REFRATIO,
|
||||||
ZFS_PROP_WRITTEN,
|
ZFS_PROP_WRITTEN,
|
||||||
ZFS_PROP_CLONES,
|
ZFS_PROP_CLONES,
|
||||||
|
ZFS_PROP_LOGICALUSED,
|
||||||
|
ZFS_PROP_LOGICALREFERENCED,
|
||||||
ZFS_PROP_SNAPDEV,
|
ZFS_PROP_SNAPDEV,
|
||||||
ZFS_PROP_ACLTYPE,
|
ZFS_PROP_ACLTYPE,
|
||||||
ZFS_NUM_PROPS
|
ZFS_NUM_PROPS
|
||||||
|
@ -431,6 +431,40 @@ This property is \fBon\fR if the snapshot has been marked for deferred destructi
|
|||||||
.ne 2
|
.ne 2
|
||||||
.mk
|
.mk
|
||||||
.na
|
.na
|
||||||
|
\fB\fBlogicalreferenced\fR\fR
|
||||||
|
.ad
|
||||||
|
.sp .6
|
||||||
|
.RS 4n
|
||||||
|
The amount of space that is "logically" accessible by this dataset. See
|
||||||
|
the \fBreferenced\fR property. The logical space ignores the effect of
|
||||||
|
the \fBcompression\fR and \fBcopies\fR properties, giving a quantity
|
||||||
|
closer to the amount of data that applications see. However, it does
|
||||||
|
include space consumed by metadata.
|
||||||
|
.sp
|
||||||
|
This property can also be referred to by its shortened column name,
|
||||||
|
\fBlrefer\fR.
|
||||||
|
.RE
|
||||||
|
|
||||||
|
.sp
|
||||||
|
.ne 2
|
||||||
|
.na
|
||||||
|
\fB\fBlogicalused\fR\fR
|
||||||
|
.ad
|
||||||
|
.sp .6
|
||||||
|
.RS 4n
|
||||||
|
The amount of space that is "logically" consumed by this dataset and all
|
||||||
|
its descendents. See the \fBused\fR property. The logical space
|
||||||
|
ignores the effect of the \fBcompression\fR and \fBcopies\fR properties,
|
||||||
|
giving a quantity closer to the amount of data that applications see.
|
||||||
|
However, it does include space consumed by metadata.
|
||||||
|
.sp
|
||||||
|
This property can also be referred to by its shortened column name,
|
||||||
|
\fBlused\fR.
|
||||||
|
.RE
|
||||||
|
|
||||||
|
.sp
|
||||||
|
.ne 2
|
||||||
|
.na
|
||||||
\fB\fBmounted\fR\fR
|
\fB\fBmounted\fR\fR
|
||||||
.ad
|
.ad
|
||||||
.sp .6
|
.sp .6
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||||
* Copyright (c) 2011 by Delphix. All rights reserved.
|
* Copyright (c) 2012 by Delphix. All rights reserved.
|
||||||
* Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
|
* Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -365,6 +365,10 @@ zfs_prop_init(void)
|
|||||||
ZFS_TYPE_SNAPSHOT, "<count>", "USERREFS");
|
ZFS_TYPE_SNAPSHOT, "<count>", "USERREFS");
|
||||||
zprop_register_number(ZFS_PROP_WRITTEN, "written", 0, PROP_READONLY,
|
zprop_register_number(ZFS_PROP_WRITTEN, "written", 0, PROP_READONLY,
|
||||||
ZFS_TYPE_DATASET, "<size>", "WRITTEN");
|
ZFS_TYPE_DATASET, "<size>", "WRITTEN");
|
||||||
|
zprop_register_number(ZFS_PROP_LOGICALUSED, "logicalused", 0,
|
||||||
|
PROP_READONLY, ZFS_TYPE_DATASET, "<size>", "LUSED");
|
||||||
|
zprop_register_number(ZFS_PROP_LOGICALREFERENCED, "logicalreferenced",
|
||||||
|
0, PROP_READONLY, ZFS_TYPE_DATASET, "<size>", "LREFER");
|
||||||
|
|
||||||
/* default number properties */
|
/* default number properties */
|
||||||
zprop_register_number(ZFS_PROP_QUOTA, "quota", 0, PROP_DEFAULT,
|
zprop_register_number(ZFS_PROP_QUOTA, "quota", 0, PROP_DEFAULT,
|
||||||
|
@ -1387,6 +1387,8 @@ dsl_dataset_stats(dsl_dataset_t *ds, nvlist_t *nv)
|
|||||||
ds->ds_phys->ds_compressed_bytes);
|
ds->ds_phys->ds_compressed_bytes);
|
||||||
|
|
||||||
dsl_prop_nvlist_add_uint64(nv, ZFS_PROP_REFRATIO, ratio);
|
dsl_prop_nvlist_add_uint64(nv, ZFS_PROP_REFRATIO, ratio);
|
||||||
|
dsl_prop_nvlist_add_uint64(nv, ZFS_PROP_LOGICALREFERENCED,
|
||||||
|
ds->ds_phys->ds_uncompressed_bytes);
|
||||||
|
|
||||||
if (dsl_dataset_is_snapshot(ds)) {
|
if (dsl_dataset_is_snapshot(ds)) {
|
||||||
dsl_prop_nvlist_add_uint64(nv, ZFS_PROP_COMPRESSRATIO, ratio);
|
dsl_prop_nvlist_add_uint64(nv, ZFS_PROP_COMPRESSRATIO, ratio);
|
||||||
|
@ -440,6 +440,8 @@ dsl_dir_stats(dsl_dir_t *dd, nvlist_t *nv)
|
|||||||
dd->dd_phys->dd_compressed_bytes == 0 ? 100 :
|
dd->dd_phys->dd_compressed_bytes == 0 ? 100 :
|
||||||
(dd->dd_phys->dd_uncompressed_bytes * 100 /
|
(dd->dd_phys->dd_uncompressed_bytes * 100 /
|
||||||
dd->dd_phys->dd_compressed_bytes));
|
dd->dd_phys->dd_compressed_bytes));
|
||||||
|
dsl_prop_nvlist_add_uint64(nv, ZFS_PROP_LOGICALUSED,
|
||||||
|
dd->dd_phys->dd_uncompressed_bytes);
|
||||||
if (dd->dd_phys->dd_flags & DD_FLAG_USED_BREAKDOWN) {
|
if (dd->dd_phys->dd_flags & DD_FLAG_USED_BREAKDOWN) {
|
||||||
dsl_prop_nvlist_add_uint64(nv, ZFS_PROP_USEDSNAP,
|
dsl_prop_nvlist_add_uint64(nv, ZFS_PROP_USEDSNAP,
|
||||||
dd->dd_phys->dd_used_breakdown[DD_USED_SNAP]);
|
dd->dd_phys->dd_used_breakdown[DD_USED_SNAP]);
|
||||||
|
Loading…
Reference in New Issue
Block a user