FreeBSD: 11.x arc_stats compatibility
Removing other_size from arc_stats breaks top in 11.x jails running on HEAD. Reviewed-by: Ryan Moeller <ryan@iXsystems.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Matt Macy <mmacy@FreeBSD.org> Closes #10745
This commit is contained in:
parent
10b3c7f5e4
commit
1c2725a157
|
@ -619,6 +619,13 @@ typedef struct arc_stats {
|
||||||
* Not updated directly; only synced in arc_kstat_update.
|
* Not updated directly; only synced in arc_kstat_update.
|
||||||
*/
|
*/
|
||||||
kstat_named_t arcstat_bonus_size;
|
kstat_named_t arcstat_bonus_size;
|
||||||
|
#if defined(COMPAT_FREEBSD11)
|
||||||
|
/*
|
||||||
|
* Sum of the previous three counters, provided for compatibility.
|
||||||
|
*/
|
||||||
|
kstat_named_t arcstat_other_size;
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Total number of bytes consumed by ARC buffers residing in the
|
* Total number of bytes consumed by ARC buffers residing in the
|
||||||
* arc_anon state. This includes *all* buffers in the arc_anon
|
* arc_anon state. This includes *all* buffers in the arc_anon
|
||||||
|
|
|
@ -33,7 +33,7 @@ CFLAGS+= -include ${INCDIR}/os/freebsd/spl/sys/ccompile.h
|
||||||
|
|
||||||
CFLAGS+= -D__KERNEL__ -DFREEBSD_NAMECACHE -DBUILDING_ZFS -D__BSD_VISIBLE=1 \
|
CFLAGS+= -D__KERNEL__ -DFREEBSD_NAMECACHE -DBUILDING_ZFS -D__BSD_VISIBLE=1 \
|
||||||
-DHAVE_UIO_ZEROCOPY -DWITHOUT_NETDUMP -D__KERNEL -D_SYS_CONDVAR_H_ \
|
-DHAVE_UIO_ZEROCOPY -DWITHOUT_NETDUMP -D__KERNEL -D_SYS_CONDVAR_H_ \
|
||||||
-D_SYS_VMEM_H_ -DKDTRACE_HOOKS -DSMP -DHAVE_KSID
|
-D_SYS_VMEM_H_ -DKDTRACE_HOOKS -DSMP -DHAVE_KSID -DCOMPAT_FREEBSD11
|
||||||
|
|
||||||
.if ${MACHINE_ARCH} == "amd64"
|
.if ${MACHINE_ARCH} == "amd64"
|
||||||
CFLAGS+= -DHAVE_AVX2 -DHAVE_AVX -D__x86_64 -DHAVE_SSE2 -DHAVE_AVX512F -DHAVE_SSSE3
|
CFLAGS+= -DHAVE_AVX2 -DHAVE_AVX -D__x86_64 -DHAVE_SSE2 -DHAVE_AVX512F -DHAVE_SSSE3
|
||||||
|
|
|
@ -512,6 +512,9 @@ arc_stats_t arc_stats = {
|
||||||
{ "dbuf_size", KSTAT_DATA_UINT64 },
|
{ "dbuf_size", KSTAT_DATA_UINT64 },
|
||||||
{ "dnode_size", KSTAT_DATA_UINT64 },
|
{ "dnode_size", KSTAT_DATA_UINT64 },
|
||||||
{ "bonus_size", KSTAT_DATA_UINT64 },
|
{ "bonus_size", KSTAT_DATA_UINT64 },
|
||||||
|
#if defined(COMPAT_FREEBSD11)
|
||||||
|
{ "other_size", KSTAT_DATA_UINT64 },
|
||||||
|
#endif
|
||||||
{ "anon_size", KSTAT_DATA_UINT64 },
|
{ "anon_size", KSTAT_DATA_UINT64 },
|
||||||
{ "anon_evictable_data", KSTAT_DATA_UINT64 },
|
{ "anon_evictable_data", KSTAT_DATA_UINT64 },
|
||||||
{ "anon_evictable_metadata", KSTAT_DATA_UINT64 },
|
{ "anon_evictable_metadata", KSTAT_DATA_UINT64 },
|
||||||
|
@ -7121,6 +7124,11 @@ arc_kstat_update(kstat_t *ksp, int rw)
|
||||||
ARCSTAT(arcstat_hdr_size) = aggsum_value(&astat_hdr_size);
|
ARCSTAT(arcstat_hdr_size) = aggsum_value(&astat_hdr_size);
|
||||||
ARCSTAT(arcstat_l2_hdr_size) = aggsum_value(&astat_l2_hdr_size);
|
ARCSTAT(arcstat_l2_hdr_size) = aggsum_value(&astat_l2_hdr_size);
|
||||||
ARCSTAT(arcstat_dbuf_size) = aggsum_value(&astat_dbuf_size);
|
ARCSTAT(arcstat_dbuf_size) = aggsum_value(&astat_dbuf_size);
|
||||||
|
#if defined(COMPAT_FREEBSD11)
|
||||||
|
ARCSTAT(arcstat_other_size) = aggsum_value(&astat_bonus_size) +
|
||||||
|
aggsum_value(&astat_dnode_size) +
|
||||||
|
aggsum_value(&astat_dbuf_size);
|
||||||
|
#endif
|
||||||
ARCSTAT(arcstat_dnode_size) = aggsum_value(&astat_dnode_size);
|
ARCSTAT(arcstat_dnode_size) = aggsum_value(&astat_dnode_size);
|
||||||
ARCSTAT(arcstat_bonus_size) = aggsum_value(&astat_bonus_size);
|
ARCSTAT(arcstat_bonus_size) = aggsum_value(&astat_bonus_size);
|
||||||
ARCSTAT(arcstat_abd_chunk_waste_size) =
|
ARCSTAT(arcstat_abd_chunk_waste_size) =
|
||||||
|
|
Loading…
Reference in New Issue