Permalink
Browse files

6950 ARC should cache compressed data

Reviewed by: Prakash Surya <prakash.surya@delphix.com>
Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: Matt Ahrens <mahrens@delphix.com>
Reviewed by: Paul Dagnelie <pcd@delphix.com>
Reviewed by: Don Brady <don.brady@intel.com>
Reviewed by: Richard Elling <Richard.Elling@RichardElling.com>
Approved by: Richard Lowe <richlowe@richlowe.net>
  • Loading branch information...
grwilson authored and ahrens committed Jul 13, 2016
1 parent a5dce49 commit dcbf3bd6a1f1360fc1afcee9e22c6dcff7844bf2
Showing with 4,422 additions and 1,990 deletions.
  1. +19 −1 usr/src/cmd/mdb/common/mdb/mdb_ctf.c
  2. +2 −1 usr/src/cmd/mdb/common/mdb/mdb_ctf.h
  3. +2 −1 usr/src/cmd/mdb/common/modules/conf/mapfile-extern
  4. +428 −1 usr/src/cmd/mdb/common/modules/zfs/zfs.c
  5. +1 −1 usr/src/cmd/zdb/zdb.c
  6. +7 −0 usr/src/cmd/ztest/ztest.c
  7. +7 −3 usr/src/grub/grub-0.97/stage2/zfs-include/spa.h
  8. +2 −1 usr/src/lib/libzpool/common/llib-lzpool
  9. +25 −0 usr/src/pkg/manifests/system-test-zfstest.mf
  10. +12 −4 usr/src/test/test-runner/cmd/run.py
  11. +9 −0 usr/src/test/zfs-tests/include/commands.cfg
  12. +3 −0 usr/src/test/zfs-tests/include/default.cfg
  13. +24 −0 usr/src/test/zfs-tests/include/libtest.shlib
  14. +4 −1 usr/src/test/zfs-tests/runfiles/Makefile
  15. +30 −0 usr/src/test/zfs-tests/runfiles/perf-regression.run
  16. +2 −2 usr/src/test/zfs-tests/tests/Makefile
  17. +35 −1 usr/src/test/zfs-tests/tests/functional/clean_mirror/clean_mirror_common.kshlib
  18. +44 −0 usr/src/test/zfs-tests/tests/perf/Makefile
  19. +41 −0 usr/src/test/zfs-tests/tests/perf/fio/Makefile
  20. +30 −0 usr/src/test/zfs-tests/tests/perf/fio/mkfiles.fio
  21. +31 −0 usr/src/test/zfs-tests/tests/perf/fio/random_reads.fio
  22. +35 −0 usr/src/test/zfs-tests/tests/perf/fio/random_readwrite.fio
  23. +33 −0 usr/src/test/zfs-tests/tests/perf/fio/random_writes.fio
  24. +31 −0 usr/src/test/zfs-tests/tests/perf/fio/sequential_reads.fio
  25. +33 −0 usr/src/test/zfs-tests/tests/perf/fio/sequential_writes.fio
  26. +240 −0 usr/src/test/zfs-tests/tests/perf/perf.shlib
  27. +46 −0 usr/src/test/zfs-tests/tests/perf/regression/Makefile
  28. +77 −0 usr/src/test/zfs-tests/tests/perf/regression/random_reads.ksh
  29. +77 −0 usr/src/test/zfs-tests/tests/perf/regression/random_readwrite.ksh
  30. +69 −0 usr/src/test/zfs-tests/tests/perf/regression/random_writes.ksh
  31. +78 −0 usr/src/test/zfs-tests/tests/perf/regression/sequential_reads.ksh
  32. +77 −0 usr/src/test/zfs-tests/tests/perf/regression/sequential_reads_cached.ksh
  33. +93 −0 usr/src/test/zfs-tests/tests/perf/regression/sequential_reads_cached_clone.ksh
  34. +69 −0 usr/src/test/zfs-tests/tests/perf/regression/sequential_writes.ksh
  35. +23 −0 usr/src/test/zfs-tests/tests/perf/regression/setup.ksh
  36. +37 −0 usr/src/test/zfs-tests/tests/perf/scripts/Makefile
  37. +109 −0 usr/src/test/zfs-tests/tests/perf/scripts/io.d
  38. +87 −0 usr/src/test/zfs-tests/tests/perf/scripts/prefetch_io.d
  39. +1,858 −1,675 usr/src/uts/common/fs/zfs/arc.c
  40. +421 −199 usr/src/uts/common/fs/zfs/dbuf.c
  41. +3 −4 usr/src/uts/common/fs/zfs/dmu.c
  42. +2 −2 usr/src/uts/common/fs/zfs/dmu_diff.c
  43. +5 −10 usr/src/uts/common/fs/zfs/dmu_objset.c
  44. +4 −4 usr/src/uts/common/fs/zfs/dmu_send.c
  45. +2 −2 usr/src/uts/common/fs/zfs/dmu_traverse.c
  46. +1 −1 usr/src/uts/common/fs/zfs/dnode.c
  47. +2 −2 usr/src/uts/common/fs/zfs/dnode_sync.c
  48. +3 −3 usr/src/uts/common/fs/zfs/dsl_scan.c
  49. +24 −0 usr/src/uts/common/fs/zfs/refcount.c
  50. +59 −33 usr/src/uts/common/fs/zfs/sys/arc.h
  51. +7 −6 usr/src/uts/common/fs/zfs/sys/dbuf.h
  52. +2 −0 usr/src/uts/common/fs/zfs/sys/refcount.h
  53. +6 −2 usr/src/uts/common/fs/zfs/sys/spa.h
  54. +4 −0 usr/src/uts/common/fs/zfs/sys/zio.h
  55. +4 −0 usr/src/uts/common/fs/zfs/sys/zio_checksum.h
  56. +3 −2 usr/src/uts/common/fs/zfs/zil.c
  57. +5 −5 usr/src/uts/common/fs/zfs/zio.c
  58. +35 −23 usr/src/uts/common/fs/zfs/zio_checksum.c
@@ -23,7 +23,7 @@
* Use is subject to license terms.
*/
/*
* Copyright (c) 2013 by Delphix. All rights reserved.
* Copyright (c) 2013, 2015 by Delphix. All rights reserved.
* Copyright (c) 2013, Joyent, Inc. All rights reserved.
*/
@@ -910,6 +910,24 @@ mdb_ctf_offsetof_by_name(const char *type, const char *member)
return (off);
}
ssize_t
mdb_ctf_sizeof_by_name(const char *type)
{
mdb_ctf_id_t id;
ssize_t size;
if (mdb_ctf_lookup_by_name(type, &id) == -1) {
mdb_warn("couldn't find type %s", type);
return (-1);
}
if ((size = mdb_ctf_type_size(id)) == -1) {
mdb_warn("couldn't determine type size of %s", type);
return (-1);
}
return (size);
}
/*ARGSUSED*/
static int
@@ -23,7 +23,7 @@
* Use is subject to license terms.
*/
/*
* Copyright (c) 2013 by Delphix. All rights reserved.
* Copyright (c) 2013, 2015 by Delphix. All rights reserved.
* Copyright (c) 2015, Joyent, Inc.
*/
@@ -136,6 +136,7 @@ extern int mdb_ctf_member_info(mdb_ctf_id_t, const char *,
extern int mdb_ctf_offsetof(mdb_ctf_id_t, const char *, ulong_t *);
extern int mdb_ctf_num_members(mdb_ctf_id_t);
extern int mdb_ctf_offsetof_by_name(const char *, const char *);
extern ssize_t mdb_ctf_sizeof_by_name(const char *);
extern ssize_t mdb_ctf_offset_to_name(mdb_ctf_id_t, ulong_t, char *, size_t,
int, mdb_ctf_id_t *, ulong_t *);
@@ -1,6 +1,6 @@
#
# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2013 by Delphix. All rights reserved.
# Copyright (c) 2013, 2015 by Delphix. All rights reserved.
#
# CDDL HEADER START
#
@@ -67,6 +67,7 @@ SYMBOL_SCOPE {
mdb_ctf_module_lookup { FLAGS = EXTERN };
mdb_ctf_offsetof { FLAGS = EXTERN };
mdb_ctf_offsetof_by_name { FLAGS = EXTERN };
mdb_ctf_sizeof_by_name { FLAGS = EXTERN };
mdb_ctf_readsym { FLAGS = EXTERN };
mdb_ctf_type_cmp { FLAGS = EXTERN };
mdb_ctf_type_invalidate { FLAGS = EXTERN };
Oops, something went wrong.

0 comments on commit dcbf3bd

Please sign in to comment.