xattr handlers: Pass handler to operations instead of flags
[cascardo/linux.git] / fs / buffer.c
index 7a49bb8..4f4cd95 100644 (file)
@@ -999,7 +999,7 @@ grow_dev_page(struct block_device *bdev, sector_t block,
        int ret = 0;            /* Will call free_more_memory() */
        gfp_t gfp_mask;
 
-       gfp_mask = (mapping_gfp_mask(inode->i_mapping) & ~__GFP_FS) | gfp;
+       gfp_mask = mapping_gfp_constraint(inode->i_mapping, ~__GFP_FS) | gfp;
 
        /*
         * XXX: __getblk_slow() can not really deal with failure and
@@ -2420,9 +2420,9 @@ EXPORT_SYMBOL(block_commit_write);
  * unlock the page.
  *
  * Direct callers of this function should protect against filesystem freezing
- * using sb_start_write() - sb_end_write() functions.
+ * using sb_start_pagefault() - sb_end_pagefault() functions.
  */
-int __block_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf,
+int block_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf,
                         get_block_t get_block)
 {
        struct page *page = vmf->page;
@@ -2459,26 +2459,6 @@ out_unlock:
        unlock_page(page);
        return ret;
 }
-EXPORT_SYMBOL(__block_page_mkwrite);
-
-int block_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf,
-                  get_block_t get_block)
-{
-       int ret;
-       struct super_block *sb = file_inode(vma->vm_file)->i_sb;
-
-       sb_start_pagefault(sb);
-
-       /*
-        * Update file times before taking page lock. We may end up failing the
-        * fault so this update may be superfluous but who really cares...
-        */
-       file_update_time(vma->vm_file);
-
-       ret = __block_page_mkwrite(vma, vmf, get_block);
-       sb_end_pagefault(sb);
-       return block_page_mkwrite_return(ret);
-}
 EXPORT_SYMBOL(block_page_mkwrite);
 
 /*
@@ -2961,7 +2941,7 @@ static void end_bio_bh_io_sync(struct bio *bio)
 {
        struct buffer_head *bh = bio->bi_private;
 
-       if (unlikely (test_bit(BIO_QUIET,&bio->bi_flags)))
+       if (unlikely(bio_flagged(bio, BIO_QUIET)))
                set_bit(BH_Quiet, &bh->b_state);
 
        bh->b_end_io(bh, !bio->bi_error);
@@ -3046,12 +3026,9 @@ static int submit_bh_wbc(int rw, struct buffer_head *bh,
 
        bio->bi_iter.bi_sector = bh->b_blocknr * (bh->b_size >> 9);
        bio->bi_bdev = bh->b_bdev;
-       bio->bi_io_vec[0].bv_page = bh->b_page;
-       bio->bi_io_vec[0].bv_len = bh->b_size;
-       bio->bi_io_vec[0].bv_offset = bh_offset(bh);
 
-       bio->bi_vcnt = 1;
-       bio->bi_iter.bi_size = bh->b_size;
+       bio_add_page(bio, bh->b_page, bh->b_size, bh_offset(bh));
+       BUG_ON(bio->bi_iter.bi_size != bh->b_size);
 
        bio->bi_end_io = end_bio_bh_io_sync;
        bio->bi_private = bh;