Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merge commit gap #4

Merged
merged 91 commits into from
Aug 1, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
91 commits
Select commit Hold shift + click to select a range
3491d6e
Consistently use parsable instead of parseable
chrekh May 23, 2016
de0ef91
Add missing RPM BuildRequires
behlendorf May 20, 2016
cbecb4f
Skip ctldir znode in zfs_rezget to fix snapdir issues
May 20, 2016
8342673
Improve zfs-module-parameters(5)
DeHackEd Dec 30, 2015
4442f60
Fix arc_prune_task use-after-free
May 23, 2016
7e94507
Add request size histograms (-r) to zpool iostat, minor man page fix
tonyhutter May 25, 2016
26ef0cc
OpenZFS 6531 - Provide mechanism to artificially limit disk performance
tonyhutter May 23, 2016
92547bc
Systemd configuration fixes
behlendorf May 25, 2016
b7faa7a
Fix self-healing IO prior to dsl_pool_init() completion
May 21, 2016
2493dca
Add isa_defs for MIPS
wzssyqa May 28, 2016
540c392
Fix out-of-bound access in zfs_fillpage
May 27, 2016
06ee003
Fix memleak in zpl_parse_options
May 27, 2016
6a79672
Fix memleak in vdev_config_generate_stats
May 27, 2016
8fbbc6b
Linux 4.7 compat: handler->set() takes both dentry and inode
behlendorf Jun 2, 2016
1eeb456
Implementation of AVX2 optimized Fletcher-4
Dec 9, 2015
f866a4e
Fix cstyle.pl warnings
behlendorf Jun 3, 2016
2627e75
Fix minor spelling mistakes
Jun 6, 2016
f74b821
Add `zfs allow` and `zfs unallow` support
behlendorf Jun 7, 2016
46ab359
Remove libzfs_graph.c
behlendorf Jun 15, 2016
09fb30e
Linux 4.6 compat: Fall back to d_prune_aliases() if necessary
dweeezil Jun 16, 2016
ab9f4b0
SIMD implementation of vdev_raidz generate and reconstruct routines
ironMann Apr 25, 2016
100a91a
Fix NFS credential
Jun 18, 2016
bc77ba7
OpenZFS 6513 - partially filled holes lose birth time
pcd1193182 May 15, 2016
d0de2e8
Add a test case for dmu_free_long_range() to ztest
bprotopopov Dec 17, 2015
391bba1
Revert "Add a test case for dmu_free_long_range() to ztest"
behlendorf Jun 24, 2016
784d15c
OpenZFS 6878 - Add scrub completion info to "zpool history"
Jun 23, 2016
d14fa5d
FreeBSD rS271776 - Persist vdev_resilver_txg changes
Jun 23, 2016
8128558
xattrtest: allow verify with -R and other improvements
nedbass Apr 10, 2015
68cbd56
Backfill metadnode more intelligently
nedbass May 17, 2016
50c957f
Implement large_dnode pool feature
nedbass Mar 17, 2016
669cf0a
Sync DMU_BACKUP_FEATURE_* flags
behlendorf Jun 24, 2016
47dfff3
OpenZFS 2605, 6980, 6902
ahrens Jan 6, 2016
fd41e93
OpenZFS 6051 - lzc_receive: allow the caller to read the begin record
behlendorf Jun 16, 2016
e6d3a84
OpenZFS 6393 - zfs receive a full send as a clone
pcd1193182 Jun 9, 2016
b607405
OpenZFS 6536 - zfs send: want a way to disable setting of DRR_FLAG_FR…
andy-js Jun 9, 2016
f8866f8
OpenZFS 6738 - zfs send stream padding needs documentation
Jun 9, 2016
671c935
OpenZFS 4986 - receiving replication stream fails if any snapshot exc…
Jun 9, 2016
8c62a0d
OpenZFS 6562 - Refquota on receive doesn't account for overage
Jun 9, 2016
43e52ed
Implement zfs_ioc_recv_new() for OpenZFS 2605
behlendorf Jun 10, 2016
eca7b76
OpenZFS 6314 - buffer overflow in dsl_dataset_name
ikozhukhov Jun 15, 2016
d1d19c7
OpenZFS 6876 - Stack corruption after importing a pool with a too-lon…
pcd1193182 Jun 15, 2016
0dab2e8
Vectorized fletcher_4 must be 128-bit aligned
behlendorf Jun 28, 2016
5c27b29
Merge branch 'illumos-2605'
behlendorf Jun 29, 2016
590c9a0
Allow building with `CFLAGS="-O0"`
ironMann Jun 29, 2016
061460d
Fix get_zfs_sb race with concurrent umount
Jul 8, 2016
7938c2a
Don't allow accessing XATTR via export handle
Jul 6, 2016
bffb68a
Fix Large kmem_alloc in vdev_metaslab_init
Jul 7, 2016
d470101
Add configure result for xattr_handler
Jul 7, 2016
6c25306
fh_to_dentry should return ESTALE when generation mismatch
Jul 8, 2016
ddae16a
xattr dir doesn't get purged during iput
Jul 5, 2016
31b6111
Kill zp->z_xattr_parent to prevent pinning
Jul 6, 2016
62b2d54
Fix RAIDZ_TEST tests
behlendorf Jul 12, 2016
81edd3e
Fix PANIC: metaslab_free_dva(): bad DVA X:Y:Z
hsepeng Jun 8, 2016
1bf3bf0
Fix handling of errors nvlist in zfs_ioc_recv_new()
ironMann Jul 9, 2016
ae25d22
Add RAID-Z routines for SSE2 instruction set, in x86_64 mode.
ironMann Jun 28, 2016
8d9e124
Enable zpool_upgrade test cases
behlendorf Jul 14, 2016
8887c7d
Prevent null dereferences when accessing dbuf kstat
dweeezil Jul 10, 2016
02de3e3
Fix dbuf_stats_hash_table_data race
Jul 12, 2016
dfbc863
Use native inode->i_nlink instead of znode->z_links
chrisrd Jul 14, 2016
35a76a0
Implementation of SSE optimized Fletcher-4
tj90241 Jun 24, 2016
1b87e0f
Fix filesystem destroy with receive_resume_token
rstrlcpy Jul 12, 2016
3d11ecb
Prevent segfaults in SSE optimized Fletcher-4
tj90241 Jul 18, 2016
b756ff2
Update arc_summary.py for prefetch changes
behlendorf Jul 15, 2016
1d9b3bd
Wait iput_async before evict_inodes to prevent race
Jul 15, 2016
c9187d8
Fixes and enhancements of SIMD raidz parity
ironMann Jul 17, 2016
26a08b5
RAIDZ parity kstat rework
ironMann Jul 18, 2016
be88e73
Fix NULL pointer in zfs_preumount from 1d9b3bd
Jul 19, 2016
0b04990
Illumos Crypto Port module added to enable native encryption in zfs
May 12, 2016
f4bc1bb
Fix for compilation error when using the kernel's CONFIG_LOCKDEP
Jul 21, 2016
20da056
zloop: print backtrace from core files
ironMann Jul 24, 2016
77943bc
Fix for metaslab_fastwrite_unmark() assert failure
Jul 22, 2016
82a1b2d
Check whether the kernel supports i_uid/gid_read/write helpers
May 30, 2016
2c6abf1
Remove znode's z_uid/z_gid member
May 22, 2016
273ff9b
Fix uninitialized variable in avl_add()
behlendorf Jul 25, 2016
e6603b7
Fix sync behavior for disk vdevs
dweeezil Jul 8, 2016
25458cb
Limit the amount of dnode metadata in the ARC
dweeezil Jul 13, 2016
a64f903
Fixes for issues found with cppcheck tool
ironMann Jul 19, 2016
8a39aba
Multi-thread 'zpool import' for blkid
behlendorf Jun 23, 2016
bf18fd8
void integer overflow on computation of refquota_slack
Jul 27, 2016
a0cacb7
Enable history test cases
behlendorf Jul 26, 2016
fcf64f4
Fix zdb crash with 4K-only devices
behlendorf Jun 29, 2016
f26b4b3
txg visibility code should not execute under tc_open_lock
ryao Feb 17, 2016
bbb1b6c
Linux 4.8 compat: submit_bio()
behlendorf Jul 27, 2016
76e5f6f
Linux 4.8 compat: REQ_PREFLUSH
behlendorf Jul 27, 2016
3b86aeb
Linux 4.8 compat: REQ_OP and bio_set_op_attrs()
Jul 27, 2016
9f3d140
Fix zfs_allow_log_destroy() NULL dereference
heary-cao Jul 27, 2016
e334e82
Unify license of icp module with the rest of zfs
Jul 29, 2016
ba2fe6a
Move assignment of i_blkbits field
Jul 29, 2016
b264d9b
libzfs: Fix missing va_end call on ENOSPC and EDQUOT cases
Jul 29, 2016
78867a0
libzfs_import.c: Uninitialized pointer read
ironMann Jul 28, 2016
df053d6
ztest: memory leaks reported by AddressSanitizer
ironMann Jul 28, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
*.swp
.deps
.libs
.dirstamp
.DS_Store
modules.order
Makefile
Expand Down
2 changes: 1 addition & 1 deletion cmd/Makefile.am
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
SUBDIRS = zfs zpool zdb zhack zinject zstreamdump ztest zpios
SUBDIRS += mount_zfs fsck_zfs zvol_id vdev_id arcstat dbufstat zed
SUBDIRS += arc_summary
SUBDIRS += arc_summary raidz_test
147 changes: 1 addition & 146 deletions cmd/arc_summary/arc_summary.py
Original file line number Diff line number Diff line change
Expand Up @@ -775,39 +775,13 @@ def _l2arc_summary(Kstat):
def get_dmu_summary(Kstat):
output = {}

zfetch_bogus_streams = Kstat["kstat.zfs.misc.zfetchstats.bogus_streams"]
zfetch_colinear_hits = Kstat["kstat.zfs.misc.zfetchstats.colinear_hits"]
zfetch_colinear_misses = \
Kstat["kstat.zfs.misc.zfetchstats.colinear_misses"]
zfetch_hits = Kstat["kstat.zfs.misc.zfetchstats.hits"]
zfetch_misses = Kstat["kstat.zfs.misc.zfetchstats.misses"]
zfetch_reclaim_failures = \
Kstat["kstat.zfs.misc.zfetchstats.reclaim_failures"]
zfetch_reclaim_successes = \
Kstat["kstat.zfs.misc.zfetchstats.reclaim_successes"]
zfetch_streams_noresets = \
Kstat["kstat.zfs.misc.zfetchstats.streams_noresets"]
zfetch_streams_resets = Kstat["kstat.zfs.misc.zfetchstats.streams_resets"]
zfetch_stride_hits = Kstat["kstat.zfs.misc.zfetchstats.stride_hits"]
zfetch_stride_misses = Kstat["kstat.zfs.misc.zfetchstats.stride_misses"]

zfetch_access_total = (zfetch_hits + zfetch_misses)
zfetch_colinear_total = (zfetch_colinear_hits + zfetch_colinear_misses)
zfetch_health_count = (zfetch_bogus_streams)
zfetch_reclaim_total = (zfetch_reclaim_successes + zfetch_reclaim_failures)
zfetch_streams_total = (zfetch_streams_resets + zfetch_streams_noresets +
zfetch_bogus_streams)
zfetch_stride_total = (zfetch_stride_hits + zfetch_stride_misses)
output['zfetch_access_total'] = zfetch_access_total

if zfetch_access_total > 0:

output['file_level_prefetch'] = {}
if zfetch_health_count > 0:
output['file_level_prefetch']['health'] = 'DEGRADED'
else:
output['file_level_prefetch']['health'] = 'HEALTHY'

output['dmu'] = {}
output['dmu']['efficiency'] = {}
output['dmu']['efficiency']['value'] = fHits(zfetch_access_total)
Expand All @@ -820,57 +794,6 @@ def get_dmu_summary(Kstat):
'num': fHits(zfetch_misses),
}

output['dmu']['colinear'] = {}
output['dmu']['colinear']['value'] = fHits(zfetch_colinear_total)
output['dmu']['colinear']['hit_ratio'] = {
'per': fPerc(zfetch_colinear_hits, zfetch_colinear_total),
'num': fHits(zfetch_colinear_hits),
}
output['dmu']['colinear']['miss_ratio'] = {
'per': fPerc(zfetch_colinear_misses, zfetch_colinear_total),
'num': fHits(zfetch_colinear_misses),
}

output['dmu']['stride'] = {}
output['dmu']['stride']['value'] = fHits(zfetch_stride_total)
output['dmu']['stride']['hit_ratio'] = {
'per': fPerc(zfetch_stride_hits, zfetch_stride_total),
'num': fHits(zfetch_stride_hits),
}
output['dmu']['stride']['miss_ratio'] = {
'per': fPerc(zfetch_stride_misses, zfetch_stride_total),
'num': fHits(zfetch_stride_misses),
}

output['dmu_misc'] = {}
if zfetch_health_count > 0:
output['dmu_misc']['status'] = "FAULTED"
else:
output['dmu_misc']['status'] = ""

output['dmu_misc']['reclaim'] = {}
output['dmu_misc']['reclaim']['value'] = fHits(zfetch_reclaim_total)
output['dmu_misc']['reclaim']['successes'] = {
'per': fPerc(zfetch_reclaim_successes, zfetch_reclaim_total),
'num': fHits(zfetch_reclaim_successes),
}
output['dmu_misc']['reclaim']['failure'] = {
'per': fPerc(zfetch_reclaim_failures, zfetch_reclaim_total),
'num': fHits(zfetch_reclaim_failures),
}

output['dmu_misc']['streams'] = {}
output['dmu_misc']['streams']['value'] = fHits(zfetch_streams_total)
output['dmu_misc']['streams']['plus_resets'] = {
'per': fPerc(zfetch_streams_resets, zfetch_streams_total),
'num': fHits(zfetch_streams_resets),
}
output['dmu_misc']['streams']['neg_resets'] = {
'per': fPerc(zfetch_streams_noresets, zfetch_streams_total),
'num': fHits(zfetch_streams_noresets),
}
output['dmu_misc']['streams']['bogus'] = fHits(zfetch_bogus_streams)

return output


Expand All @@ -879,11 +802,7 @@ def _dmu_summary(Kstat):
arc = get_dmu_summary(Kstat)

if arc['zfetch_access_total'] > 0:
sys.stdout.write("File-Level Prefetch: (%s)" %
arc['file_level_prefetch']['health'])
sys.stdout.write("\n")

sys.stdout.write("DMU Efficiency:\t\t\t\t\t%s\n" %
sys.stdout.write("DMU Prefetch Efficiency:\t\t\t\t\t%s\n" %
arc['dmu']['efficiency']['value'])
sys.stdout.write("\tHit Ratio:\t\t\t%s\t%s\n" % (
arc['dmu']['efficiency']['hit_ratio']['per'],
Expand All @@ -898,70 +817,6 @@ def _dmu_summary(Kstat):

sys.stdout.write("\n")

sys.stdout.write("\tColinear:\t\t\t\t%s\n" %
arc['dmu']['colinear']['value'])
sys.stdout.write("\t Hit Ratio:\t\t\t%s\t%s\n" % (
arc['dmu']['colinear']['hit_ratio']['per'],
arc['dmu']['colinear']['hit_ratio']['num'],
)
)

sys.stdout.write("\t Miss Ratio:\t\t\t%s\t%s\n" % (
arc['dmu']['colinear']['miss_ratio']['per'],
arc['dmu']['colinear']['miss_ratio']['num'],
)
)

sys.stdout.write("\n")

sys.stdout.write("\tStride:\t\t\t\t\t%s\n" %
arc['dmu']['stride']['value'])
sys.stdout.write("\t Hit Ratio:\t\t\t%s\t%s\n" % (
arc['dmu']['stride']['hit_ratio']['per'],
arc['dmu']['stride']['hit_ratio']['num'],
)
)

sys.stdout.write("\t Miss Ratio:\t\t\t%s\t%s\n" % (
arc['dmu']['stride']['miss_ratio']['per'],
arc['dmu']['stride']['miss_ratio']['num'],
)
)

sys.stdout.write("\n")
sys.stdout.write("DMU Misc: %s\n" % arc['dmu_misc']['status'])

sys.stdout.write("\tReclaim:\t\t\t\t%s\n" %
arc['dmu_misc']['reclaim']['value'])
sys.stdout.write("\t Successes:\t\t\t%s\t%s\n" % (
arc['dmu_misc']['reclaim']['successes']['per'],
arc['dmu_misc']['reclaim']['successes']['num'],
)
)

sys.stdout.write("\t Failures:\t\t\t%s\t%s\n" % (
arc['dmu_misc']['reclaim']['failure']['per'],
arc['dmu_misc']['reclaim']['failure']['num'],
)
)

sys.stdout.write("\n\tStreams:\t\t\t\t%s\n" %
arc['dmu_misc']['streams']['value'])
sys.stdout.write("\t +Resets:\t\t\t%s\t%s\n" % (
arc['dmu_misc']['streams']['plus_resets']['per'],
arc['dmu_misc']['streams']['plus_resets']['num'],
)
)

sys.stdout.write("\t -Resets:\t\t\t%s\t%s\n" % (
arc['dmu_misc']['streams']['neg_resets']['per'],
arc['dmu_misc']['streams']['neg_resets']['num'],
)
)

sys.stdout.write("\t Bogus:\t\t\t\t%s\n" %
arc['dmu_misc']['streams']['bogus'])


def get_vdev_summary(Kstat):
output = {}
Expand Down
1 change: 1 addition & 0 deletions cmd/raidz_test/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/raidz_test
21 changes: 21 additions & 0 deletions cmd/raidz_test/Makefile.am
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
include $(top_srcdir)/config/Rules.am

AM_CFLAGS += $(DEBUG_STACKFLAGS) $(FRAME_LARGER_THAN)
AM_CPPFLAGS += -DDEBUG

DEFAULT_INCLUDES += \
-I$(top_srcdir)/include \
-I$(top_srcdir)/lib/libspl/include

bin_PROGRAMS = raidz_test

raidz_test_SOURCES = \
raidz_test.h \
raidz_test.c \
raidz_bench.c

raidz_test_LDADD = \
$(top_builddir)/lib/libuutil/libuutil.la \
$(top_builddir)/lib/libzpool/libzpool.la

raidz_test_LDADD += -lm -ldl
Loading