mirror_zfs/lib/libzfs
Richard Yao 5c3f61eb49 Increase Linux pipe buffer size on 'zfs receive'
I noticed when reviewing documentation that it is possible for user
space to use fctnl(fd, F_SETPIPE_SZ, (unsigned long) size) to change
the kernel pipe buffer size on Linux to increase the pipe size up to
the value specified in /proc/sys/fs/pipe-max-size. There are users using
mbuffer to improve zfs recv performance when piping over the network, so
it seems advantageous to integrate such functionality directly into the
zfs recv tool. This avoids the addition of two buffers and two copies
(one for the buffer mbuffer adds and another for the additional pipe),
so it should be more efficient.

This could have been made configurable and/or this could have changed
the value back to the original after we were done with the file
descriptor, but I do not see a strong case for doing either, so I
went with a simple implementation.

Signed-off-by: Richard Yao <ryao@gentoo.org>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue #1161
2015-03-20 10:03:34 -07:00
..
.gitignore Add a pkgconfig file 2014-08-28 07:59:43 -07:00
libzfs_changelist.c Remove ZFC_IOC_*_MINOR ioctl()s 2013-12-16 09:15:57 -08:00
libzfs_config.c Illumos #3464 2013-09-04 16:01:24 -07:00
libzfs_core.pc.in Add a pkgconfig file 2014-08-28 07:59:43 -07:00
libzfs_dataset.c Illumos 4368, 4369. 2014-07-29 10:55:29 -07:00
libzfs_diff.c Illumos #3464 2013-09-04 16:01:24 -07:00
libzfs_fru.c cstyle: Resolve C style issues 2013-12-18 16:46:35 -08:00
libzfs_graph.c Illumos #3464 2013-09-04 16:01:24 -07:00
libzfs_import.c Make zpool import -d|-c behave consistently 2015-01-28 11:12:31 -08:00
libzfs_iter.c Illumos 4368, 4369. 2014-07-29 10:55:29 -07:00
libzfs_mount.c Check the dataset type more rigorously when fetching properties. 2014-05-06 10:41:46 -07:00
libzfs_pool.c Implement -t option to zpool create for temporary pool names 2014-09-30 10:46:59 -07:00
libzfs_sendrecv.c Increase Linux pipe buffer size on 'zfs receive' 2015-03-20 10:03:34 -07:00
libzfs_status.c Read spl_hostid module parameter before gethostid() 2015-02-04 16:44:53 -08:00
libzfs_util.c Fix possible future overflow in zfs_nicenum 2015-02-24 11:39:10 -08:00
libzfs.pc.in Add a pkgconfig file 2014-08-28 07:59:43 -07:00
Makefile.am Add a pkgconfig file 2014-08-28 07:59:43 -07:00