From 18ac9d877919d28638cec835144c8c463fa6f747 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= Date: Sat, 21 Mar 2015 04:08:45 +0100 Subject: [PATCH] Fix deadlock on /proc/xen/xenbus, enable CONFIG_FHANDLE needed by udevd --- config-pvops | 6 ++-- ...x-deadlock-on-proc-xen-xenbus-access.patch | 34 +++++++++++++++++++ series-pvops.conf | 1 + 3 files changed, 38 insertions(+), 3 deletions(-) create mode 100644 patches.xen/0001-xen-fix-deadlock-on-proc-xen-xenbus-access.patch diff --git a/config-pvops b/config-pvops index 2d4b97f..a36b24f 100644 --- a/config-pvops +++ b/config-pvops @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 3.18.7 Kernel Configuration +# Linux/x86 3.18.9 Kernel Configuration # CONFIG_64BIT=y CONFIG_X86_64=y @@ -72,7 +72,7 @@ CONFIG_SYSVIPC_SYSCTL=y CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE_SYSCTL=y CONFIG_CROSS_MEMORY_ATTACH=y -# CONFIG_FHANDLE is not set +CONFIG_FHANDLE=y # CONFIG_USELIB is not set CONFIG_AUDIT=y CONFIG_HAVE_ARCH_AUDITSYSCALL=y @@ -6324,7 +6324,7 @@ CONFIG_BTRFS_FS_POSIX_ACL=y # CONFIG_BTRFS_ASSERT is not set CONFIG_NILFS2_FS=m CONFIG_FS_POSIX_ACL=y -CONFIG_EXPORTFS=m +CONFIG_EXPORTFS=y CONFIG_FILE_LOCKING=y CONFIG_FSNOTIFY=y CONFIG_DNOTIFY=y diff --git a/patches.xen/0001-xen-fix-deadlock-on-proc-xen-xenbus-access.patch b/patches.xen/0001-xen-fix-deadlock-on-proc-xen-xenbus-access.patch new file mode 100644 index 0000000..0fedb35 --- /dev/null +++ b/patches.xen/0001-xen-fix-deadlock-on-proc-xen-xenbus-access.patch @@ -0,0 +1,34 @@ +From 4e3eb4f6782da3f326879622e28a5efd3a1d26bd Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= + +Date: Fri, 20 Mar 2015 05:08:13 +0100 +Subject: [PATCH] xen: fix deadlock on /proc/xen/xenbus access +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +Organization: Invisible Things Lab +Cc: Marek Marczykowski-Górecki + +Details here: +http://lists.xenproject.org/archives/html/xen-devel/2015-03/msg02501.html + +Signed-off-by: Marek Marczykowski-Górecki +--- + drivers/xen/xenbus/xenbus_dev_frontend.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/xen/xenbus/xenbus_dev_frontend.c b/drivers/xen/xenbus/xenbus_dev_frontend.c +index 9433e46..3d333b13 100644 +--- a/drivers/xen/xenbus/xenbus_dev_frontend.c ++++ b/drivers/xen/xenbus/xenbus_dev_frontend.c +@@ -535,6 +535,7 @@ static int xenbus_file_open(struct inode *inode, struct file *filp) + return -ENOENT; + + nonseekable_open(inode, filp); ++ filp->f_mode &= ~FMODE_ATOMIC_POS; + + u = kzalloc(sizeof(*u), GFP_KERNEL); + if (u == NULL) +-- +2.1.0 + diff --git a/series-pvops.conf b/series-pvops.conf index 442b0dd..e966ab4 100644 --- a/series-pvops.conf +++ b/series-pvops.conf @@ -1,6 +1,7 @@ patches.rpmify/makefile-after_link.patch patches.xen/0001-Revert-xen-xenbus-Avoid-synchronous-wait-on-XenBus-s.patch +patches.xen/0001-xen-fix-deadlock-on-proc-xen-xenbus-access.patch # Additional features #patches.xen/pvops-0100-usb-xen-pvusb-driver.patch