Re: [PATCH 2/2] aio: fix the confliction of read events and migrating ring page

2014-03-21 Thread Benjamin LaHaise
Hi Gu, On Fri, Mar 21, 2014 at 09:56:36AM +0800, Gu Zheng wrote: > This one is based on linux-next which has merged the following patch: > commit 692c9b8c5ee8d263bb8348171f0bebd3d84eb2c1 > Author: Tang Chen > Date: Mon Mar 10 16:15:33 2014 +0800 > aio, memory-hotplug: Fix confliction when migra

Re: [PATCH 2/2] aio: fix the confliction of read events and migrating ring page

2014-03-20 Thread Gu Zheng
Hi Ben, On 03/21/2014 12:30 AM, Benjamin LaHaise wrote: > On Thu, Mar 20, 2014 at 10:32:07AM -0400, Dave Jones wrote: >> On Thu, Mar 20, 2014 at 01:46:25PM +0800, Gu Zheng wrote: >> >> > diff --git a/fs/aio.c b/fs/aio.c >> > index 88ad40c..e353085 100644 >> > --- a/fs/aio.c >> > +++ b/fs/aio.c

Re: [PATCH 2/2] aio: fix the confliction of read events and migrating ring page

2014-03-20 Thread Benjamin LaHaise
On Thu, Mar 20, 2014 at 10:32:07AM -0400, Dave Jones wrote: > On Thu, Mar 20, 2014 at 01:46:25PM +0800, Gu Zheng wrote: > > > diff --git a/fs/aio.c b/fs/aio.c > > index 88ad40c..e353085 100644 > > --- a/fs/aio.c > > +++ b/fs/aio.c > > @@ -319,6 +319,9 @@ static int aio_migratepage(struct addr

Re: [PATCH 2/2] aio: fix the confliction of read events and migrating ring page

2014-03-20 Thread Dave Jones
On Thu, Mar 20, 2014 at 01:46:25PM +0800, Gu Zheng wrote: > diff --git a/fs/aio.c b/fs/aio.c > index 88ad40c..e353085 100644 > --- a/fs/aio.c > +++ b/fs/aio.c > @@ -319,6 +319,9 @@ static int aio_migratepage(struct address_space > *mapping, struct page *new, > ctx->ring_pages[old->ind

[PATCH 2/2] aio: fix the confliction of read events and migrating ring page

2014-03-19 Thread Gu Zheng
Since we do not have additional protection on the page at the read events side, so it is possible that the read of the page takes place after the page has been freed and allocated to another part of the kernel. This would result in the read returning invalid information. So here we add a mutex pair