mirror_zfs/module/os/linux/zfs
Brian Behlendorf dd487640b2
Linux 5.10 compat: restore custom uio_prefaultpages()
As part of commit 1c2358c1 the custom uio_prefaultpages() code
was removed in favor of using the generic kernel provided
iov_iter_fault_in_readable() interface.  Unfortunately, it
turns out that up until the Linux 4.7 kernel the function would
only ever fault in the first iovec of the iov_iter.  The result
being uiomove_iov() may hang waiting for the page.

This commit effectively restores the custom uio_prefaultpages()
pages code for Linux 4.9 and earlier kernels which contain the
troublesome version of iov_iter_fault_in_readable().

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #11463 
Closes #11484
2021-01-22 09:58:49 -08:00
..
abd_os.c
arc_os.c
Makefile.in Linux 5.10 compat: use iov_iter in uio structure 2020-12-23 14:35:39 -08:00
mmp_os.c
policy.c Share zfs_fsync, zfs_read, zfs_write, et al between Linux and FreeBSD 2020-12-23 14:34:59 -08:00
qat_compress.c
qat_crypt.c
qat.c
spa_misc_os.c
trace.c
vdev_disk.c Linux 5.11 compat: bdev_whole() 2021-01-05 10:26:25 -08:00
vdev_file.c
zfs_acl.c
zfs_ctldir.c G/C struct znode -> z_moved 2020-11-11 11:40:15 -08:00
zfs_debug.c
zfs_dir.c
zfs_file_os.c
zfs_ioctl_os.c
zfs_sysfs.c
zfs_uio.c Linux 5.10 compat: restore custom uio_prefaultpages() 2021-01-22 09:58:49 -08:00
zfs_vfsops.c Fix possibly uninitialized 'root_inode' variable warning 2020-12-23 14:34:59 -08:00
zfs_vnops_os.c Linux 5.10 compat: use iov_iter in uio structure 2020-12-23 14:35:39 -08:00
zfs_znode.c Share zfs_fsync, zfs_read, zfs_write, et al between Linux and FreeBSD 2020-12-23 14:34:59 -08:00
zio_crypt.c
zpl_ctldir.c Linux: Fix ZFS_ENTER/ZFS_EXIT/ZFS_VERFY_ZP usage 2020-11-14 10:51:27 -08:00
zpl_export.c
zpl_file.c VZ 7 kernel compat: introduce ITER-enabled .direct_IO() via IOVECs 2021-01-05 10:33:41 -08:00
zpl_inode.c Linux 5.10 compat: use iov_iter in uio structure 2020-12-23 14:35:39 -08:00
zpl_super.c Linux: Fix ZFS_ENTER/ZFS_EXIT/ZFS_VERFY_ZP usage 2020-11-14 10:51:27 -08:00
zpl_xattr.c Linux 5.10 compat: use iov_iter in uio structure 2020-12-23 14:35:39 -08:00
zvol_os.c Linux 5.11 compat: blk_{un}register_region() 2021-01-05 10:26:39 -08:00