Re: [PATCH 17/17] mm: filemap: Avoid unnecessary barries and waitqueue lookup in unlock_page fastpath

2014-05-07 Thread Mel Gorman
On Mon, May 05, 2014 at 12:50:54PM +0200, Jan Kara wrote: > On Thu 01-05-14 09:44:48, Mel Gorman wrote: > > From: Nick Piggin > > > > This patch introduces a new page flag for 64-bit capable machines, > > PG_waiters, to signal there are processes waiting on PG_lock and uses it to > > avoid memory

Re: [PATCH 17/17] mm: filemap: Avoid unnecessary barries and waitqueue lookup in unlock_page fastpath

2014-05-06 Thread Peter Zijlstra
On Thu, May 01, 2014 at 09:44:48AM +0100, Mel Gorman wrote: > +/* > + * If PageWaiters was found to be set at unlock time, __wake_page_waiters > + * should be called to actually perform the wakeup of waiters. > + */ > +static inline void __wake_page_waiters(struct page *page) > +{ > + ClearPage

Re: [PATCH 17/17] mm: filemap: Avoid unnecessary barries and waitqueue lookup in unlock_page fastpath

2014-05-05 Thread Jan Kara
On Thu 01-05-14 09:44:48, Mel Gorman wrote: > From: Nick Piggin > > This patch introduces a new page flag for 64-bit capable machines, > PG_waiters, to signal there are processes waiting on PG_lock and uses it to > avoid memory barriers and waitqueue hash lookup in the unlock_page fastpath. > >

[PATCH 17/17] mm: filemap: Avoid unnecessary barries and waitqueue lookup in unlock_page fastpath

2014-05-01 Thread Mel Gorman
From: Nick Piggin This patch introduces a new page flag for 64-bit capable machines, PG_waiters, to signal there are processes waiting on PG_lock and uses it to avoid memory barriers and waitqueue hash lookup in the unlock_page fastpath. This adds a few branches to the fast path but avoids bounc