Re: [PATCH v2] vfs: __read_cache_page should use gfp argument rather than GFP_KERNEL

Dave Kleikamp <[email protected]> Wed, 21 Dec 2011 14:53:44 -0600
Newsgroups org.kernel.vger.kernel-testers,org.kernel.vger.linux-kernel,org.kvack.linux-mm
Message-ID <[email protected]>
On 12/21/2011 02:28 PM, Andrew Morton wrote:
> On Wed, 21 Dec 2011 11:05:48 -0600
> Dave Kleikamp <[email protected]> wrote:
> 
>> [ updated to remove now-obsolete comment in read_cache_page_gfp()]
>>
>> lockdep reports a deadlock in jfs because a special inode's rw semaphore
>> is taken recursively. The mapping's gfp mask is GFP_NOFS, but is not used
>> when __read_cache_page() calls add_to_page_cache_lru().
> 
> Well hang on, it's not just a lockdep splat.  The kernel actually will
> deadlock if we reenter JFS via this GFP_KERNEL allocation attempt, yes?

Yes, it could result in a real deadlock.

> Was that GFP_NOFS allocation recently added to JFS?  If not then we
> should backport this deadlock fix into -stable, no?

Yes, that would make sense.

Shaggy

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to [email protected].  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>