]> git.proxmox.com Git - mirror_zfs.git/commit - cmd/zfs/zfs_main.c
Illumos #3740
authorSteven Hartland <smh@freebsd.org>
Sat, 25 May 2013 02:06:23 +0000 (02:06 +0000)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Mon, 4 Nov 2013 19:17:48 +0000 (11:17 -0800)
commit95fd54a1c5b93bb2aa3e7dffc28c784b1e21a8bb
tree601d05db488f2e7ea24913dfa4028681928d64eb
parent7bc7f25040e68d6094a6c46fc300a3c4d66d2970
Illumos #3740

3740 Poor ZFS send / receive performance due to snapshot
     hold / release processing
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Approved by: Christopher Siden <christopher.siden@delphix.com>

References:
  https://www.illumos.org/issues/3740
  illumos/illumos-gate@a7a845e4bf22fd1b2a284729ccd95c7370a0438c

Ported-by: Richard Yao <ryao@gentoo.org>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue #1775

Porting notes:

1. 13fe019870c8779bf2f5b3ff731b512cf89133ef introduced a merge conflict
   in dsl_dataset_user_release_tmp where some variables were moved
   outside of the preprocessor directive.

2. dea9dfefdd747534b3846845629d2200f0616dad made the previous merge
   conflict worse by switching KM_SLEEP to KM_PUSHPAGE. This is notable
   because this commit refactors the code, adding a new KM_SLEEP
   allocation. It is not clear to me whether this should be converted
   to KM_PUSHPAGE.

3. We had a merge conflict in libzfs_sendrecv.c because of copyright
   notices.

4. Several small C99 compatibility fixed were made.
13 files changed:
cmd/zfs/zfs_main.c
cmd/zhack/zhack.c
cmd/ztest/ztest.c
include/libzfs.h
include/sys/dsl_dataset.h
include/sys/dsl_userhold.h
lib/libzfs/libzfs_dataset.c
lib/libzfs/libzfs_sendrecv.c
lib/libzfs_core/libzfs_core.c
module/zfs/dsl_destroy.c
module/zfs/dsl_pool.c
module/zfs/dsl_userhold.c
module/zfs/zfs_ioctl.c