Re: [Xen-devel] [PATCH] libxenstore: Use poll() with a non-blocking read()

2015-08-18 Thread Jonathan Creekmore
David Vrabel writes: > On 16/08/15 09:59, Ian Campbell wrote: >> On Thu, 2015-08-13 at 16:44 -0500, Jonathan Creekmore wrote: >>> With the addition of FMODE_ATOMIC_POS in the Linux 3.14 kernel, >>> concurrent blocking file accesses to a single open file descriptor can >>> cause a deadlock trying

Re: [Xen-devel] [PATCH] libxenstore: Use poll() with a non-blocking read()

2015-08-18 Thread David Vrabel
On 16/08/15 09:59, Ian Campbell wrote: > On Thu, 2015-08-13 at 16:44 -0500, Jonathan Creekmore wrote: >> With the addition of FMODE_ATOMIC_POS in the Linux 3.14 kernel, >> concurrent blocking file accesses to a single open file descriptor can >> cause a deadlock trying to grab the file position loc

Re: [Xen-devel] [PATCH] libxenstore: Use poll() with a non-blocking read()

2015-08-17 Thread Boris Ostrovsky
On 08/16/2015 08:46 PM, Jonathan Creekmore wrote: On Aug 16, 2015, at 1:59 AM, Ian Campbell wrote: On Thu, 2015-08-13 at 16:44 -0500, Jonathan Creekmore wrote: With the addition of FMODE_ATOMIC_POS in the Linux 3.14 kernel, concurrent blocking file accesses to a single open file descriptor can

Re: [Xen-devel] [PATCH] libxenstore: Use poll() with a non-blocking read()

2015-08-16 Thread Jonathan Creekmore
> On Aug 16, 2015, at 1:59 AM, Ian Campbell wrote: > > On Thu, 2015-08-13 at 16:44 -0500, Jonathan Creekmore wrote: >> With the addition of FMODE_ATOMIC_POS in the Linux 3.14 kernel, >> concurrent blocking file accesses to a single open file descriptor can >> cause a deadlock trying to grab the

Re: [Xen-devel] [PATCH] libxenstore: Use poll() with a non-blocking read()

2015-08-16 Thread Ian Campbell
On Thu, 2015-08-13 at 16:44 -0500, Jonathan Creekmore wrote: > With the addition of FMODE_ATOMIC_POS in the Linux 3.14 kernel, > concurrent blocking file accesses to a single open file descriptor can > cause a deadlock trying to grab the file position lock. If a watch has > been set up, causing a r

[Xen-devel] [PATCH] libxenstore: Use poll() with a non-blocking read()

2015-08-13 Thread Jonathan Creekmore
With the addition of FMODE_ATOMIC_POS in the Linux 3.14 kernel, concurrent blocking file accesses to a single open file descriptor can cause a deadlock trying to grab the file position lock. If a watch has been set up, causing a read_thread to blocking read on the file descriptor, then future write