]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
UBUNTU: SAUCE: Fix non-prefaulted page deadlock (LP: #1754584)
authorColin Ian King <colin.king@canonical.com>
Wed, 28 Mar 2018 10:19:25 +0000 (11:19 +0100)
committerSeth Forshee <seth.forshee@canonical.com>
Wed, 28 Mar 2018 14:59:41 +0000 (09:59 -0500)
commit68f4b34f1db89e29c47d60c432bc62cb1fa23c1d
tree05dc57575af3f0eda4aa6a1853e4a869a176726e
parent5f8147d6fb93a40848e427d37c8a48c0f7ca3b43
UBUNTU: SAUCE: Fix non-prefaulted page deadlock (LP: #1754584)

BugLink: https://bugs.launchpad.net/bugs/1754584
Fix mmap'd libaio read on non-prefaulted page deadlock. This is a hot fix
from ZFS upstream that ensure pages do not deadlock and replaces the original
fix as it is a far better solution.

Performing a read with the target data in a mmap'd page that is map'd into
the same blocks that are being read causes a lock on the page and a further
lock on the same page when the page is being faulted in, causing deadlock.

This is an improved fix from the original fix which ensures the pages don't
deadlock and removes the original potentially racy pre-faulting fix

Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
17 files changed:
zfs/META
zfs/Makefile.in
zfs/aclocal.m4
zfs/config/user-libaio.m4 [new file with mode: 0644]
zfs/config/user.m4
zfs/config/zfs-build.m4
zfs/configure
zfs/include/Makefile.in
zfs/include/linux/Makefile.in
zfs/include/sys/Makefile.in
zfs/include/sys/crypto/Makefile.in
zfs/include/sys/fm/Makefile.in
zfs/include/sys/fm/fs/Makefile.in
zfs/include/sys/fs/Makefile.in
zfs/include/sys/sysevent/Makefile.in
zfs/module/zfs/zfs_vnops.c
zfs/zfs_config.h.in