Merge branch 'next' into for-linus
[firefly-linux-kernel-4.4.55.git] / drivers / md / bitmap.c
index 9a35320fb59f774b0e840d934bd2a16422e99f22..5c9362792f1d928d71ded12a61b919c9ee25e7be 100644 (file)
@@ -347,7 +347,7 @@ static void write_page(struct bitmap *bitmap, struct page *page, int wait)
                        atomic_inc(&bitmap->pending_writes);
                        set_buffer_locked(bh);
                        set_buffer_mapped(bh);
-                       submit_bh(WRITE | REQ_UNPLUG | REQ_SYNC, bh);
+                       submit_bh(WRITE | REQ_SYNC, bh);
                        bh = bh->b_this_page;
                }
 
@@ -854,7 +854,7 @@ static void bitmap_file_set_bit(struct bitmap *bitmap, sector_t block)
                if (bitmap->flags & BITMAP_HOSTENDIAN)
                        set_bit(bit, kaddr);
                else
-                       ext2_set_bit(bit, kaddr);
+                       __test_and_set_bit_le(bit, kaddr);
                kunmap_atomic(kaddr, KM_USER0);
                PRINTK("set file bit %lu page %lu\n", bit, page->index);
        }
@@ -1050,7 +1050,7 @@ static int bitmap_init_from_disk(struct bitmap *bitmap, sector_t start)
                if (bitmap->flags & BITMAP_HOSTENDIAN)
                        b = test_bit(bit, paddr);
                else
-                       b = ext2_test_bit(bit, paddr);
+                       b = test_bit_le(bit, paddr);
                kunmap_atomic(paddr, KM_USER0);
                if (b) {
                        /* if the disk bit is set, set the memory bit */
@@ -1226,7 +1226,7 @@ void bitmap_daemon_work(mddev_t *mddev)
                                                clear_bit(file_page_offset(bitmap, j),
                                                          paddr);
                                        else
-                                               ext2_clear_bit(file_page_offset(bitmap, j),
+                                               __test_and_clear_bit_le(file_page_offset(bitmap, j),
                                                               paddr);
                                        kunmap_atomic(paddr, KM_USER0);
                                } else
@@ -1339,8 +1339,7 @@ int bitmap_startwrite(struct bitmap *bitmap, sector_t offset, unsigned long sect
                        prepare_to_wait(&bitmap->overflow_wait, &__wait,
                                        TASK_UNINTERRUPTIBLE);
                        spin_unlock_irq(&bitmap->lock);
-                       md_unplug(bitmap->mddev);
-                       schedule();
+                       io_schedule();
                        finish_wait(&bitmap->overflow_wait, &__wait);
                        continue;
                }