> -int __page_symlink(struct inode *inode, const char *symname, int len, > - gfp_t gfp_mask) > +/* > + * The nofs argument instructs pagecache_write_begin to pass AOP_FLAG_NOFS > + */ > +int __page_symlink(struct inode *inode, const char *symname, int len, int nofs) > { > struct address_space *mapping = inode->i_mapping; > struct page *page; > void *fsdata; > int err; > char *kaddr; > + unsigned int flags = AOP_FLAG_UNINTERRUPTIBLE; > + if (nofs) > + flags |= AOP_FLAG_NOFS; > > retry: > err = pagecache_write_begin(NULL, mapping, 0, len-1, > - AOP_FLAG_UNINTERRUPTIBLE, &page, &fsdata); > + flags, &page, &fsdata); > if (err) > goto fail; > > @@ -2820,8 +2825,7 @@ fail: > > int page_symlink(struct inode *inode, const char *symname, int len) > { > - return __page_symlink(inode, symname, len, > - mapping_gfp_mask(inode->i_mapping)); > + return __page_symlink(inode, symname, len, 0); > } your patch always pass 0 into __page_symlink(). therefore it doesn't change any behavior. right? -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html