lkml.org 
[lkml]   [2016]   [Jan]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: mm: WARNING in __delete_from_page_cache
On Tue 26-01-16 07:54:56, Matthew Wilcox wrote:
> On Tue, Jan 26, 2016 at 03:42:34AM +0000, Williams, Dan J wrote:
> > @@ -2907,7 +2912,12 @@ extern void replace_mount_options(struct super_block *sb, char *options);
> >  
> >  static inline bool io_is_direct(struct file *filp)
> >  {
> > - return (filp->f_flags & O_DIRECT) || IS_DAX(file_inode(filp));
>
> I think this should just be a one-liner:
>
> - return (filp->f_flags & O_DIRECT) || IS_DAX(file_inode(filp));
> + return (filp->f_flags & O_DIRECT) || IS_DAX(filp->f_mapping->host);
>
> This does the right thing for block device inodes and filesystem inodes.
> (see the opening stanzas of __dax_fault for an example).

Ah, right. This looks indeed better.

Honza
--
Jan Kara <jack@suse.com>
SUSE Labs, CR

\
 
 \ /
  Last update: 2016-01-26 15:01    [W:3.365 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site