Merge tag 'v3.10.56' into update
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / fs / buffer.c
index 10fca21ee8aab4fdf1052076e5f70bdc964b3817..533723a8b4695730255c4e9b46a922d1398a65ab 100644 (file)
@@ -1189,10 +1189,18 @@ static struct buffer_head *__bread_slow(struct buffer_head *bh)
        lock_buffer(bh);
        if (buffer_uptodate(bh)) {
                unlock_buffer(bh);
+#ifdef FEATURE_STORAGE_META_LOG
+               if( bh && bh->b_bdev && bh->b_bdev->bd_disk)
+                       set_metadata_rw_status(bh->b_bdev->bd_disk->first_minor, HIT_READ_CNT);
+#endif
                return bh;
        } else {
                get_bh(bh);
                bh->b_end_io = end_buffer_read_sync;
+#ifdef FEATURE_STORAGE_META_LOG
+               if( bh && bh->b_bdev && bh->b_bdev->bd_disk)
+                       set_metadata_rw_status(bh->b_bdev->bd_disk->first_minor, WAIT_READ_CNT);
+#endif
                submit_bh(READ, bh);
                wait_on_buffer(bh);
                if (buffer_uptodate(bh))
@@ -3093,6 +3101,10 @@ int __sync_dirty_buffer(struct buffer_head *bh, int rw)
        if (test_clear_buffer_dirty(bh)) {
                get_bh(bh);
                bh->b_end_io = end_buffer_write_sync;
+#ifdef FEATURE_STORAGE_META_LOG
+               if( bh && bh->b_bdev && bh->b_bdev->bd_disk)
+                       set_metadata_rw_status(bh->b_bdev->bd_disk->first_minor, WAIT_WRITE_CNT);
+#endif
                ret = submit_bh(rw, bh);
                wait_on_buffer(bh);
                if (!ret && !buffer_uptodate(bh))
@@ -3356,6 +3368,10 @@ int bh_submit_read(struct buffer_head *bh)
 
        get_bh(bh);
        bh->b_end_io = end_buffer_read_sync;
+#ifdef FEATURE_STORAGE_META_LOG
+       if( bh && bh->b_bdev && bh->b_bdev->bd_disk)
+               set_metadata_rw_status(bh->b_bdev->bd_disk->first_minor, WAIT_READ_CNT);
+#endif
        submit_bh(READ, bh);
        wait_on_buffer(bh);
        if (buffer_uptodate(bh))