Lines Matching defs:bitmap
23 - persistent bitmap code
68 #include "md-bitmap.h"
250 * 2. when bitmap is destroyed while policy is not enabled.
1181 * Check that the given mddev has no bitmap.
1185 * has a bitmap. Otherwise, it returns 0.
1339 /* bitmap can use 60 K after the 4K superblocks */
1395 } else if (mddev->bitmap) {
1396 /* if adding to array with a bitmap, then we can accept an
1399 if (ev1 < mddev->bitmap->events_cleared)
1509 if (mddev->bitmap && mddev->bitmap_info.file == NULL)
1590 return 0; /* can't move bitmap */
1852 /* Default location for bitmap is 1K after superblock
1932 } else if (mddev->bitmap) {
1933 /* If adding to array with a bitmap, then we can accept an
1936 if (ev1 < mddev->bitmap->events_cleared)
2073 if (mddev->bitmap && mddev->bitmap_info.file == NULL) {
2084 if (rdev->saved_raid_disk >= 0 && mddev->bitmap)
2203 /* if the device is bigger than 8Gig, save 64k for bitmap
2233 /* minor version 0 with bitmap we can't move */
2247 * superblock bitmap space and bad block space(4K)
2272 struct bitmap *bitmap;
2285 * beyond write-intent bitmap
2289 bitmap = rdev->mddev->bitmap;
2290 if (bitmap && !rdev->mddev->bitmap_info.file &&
2292 bitmap->storage.file_pages * (PAGE_SIZE>>9) > new_offset)
2851 md_bitmap_update_sb(mddev->bitmap);
3024 * so that it gets rebuilt based on bitmap
3160 * will land in the local bitmap, which will be synced
4705 if (!mddev->bitmap)
4717 md_bitmap_dirty_bits(mddev->bitmap, chunk, end_chunk);
4720 md_bitmap_unplug(mddev->bitmap); /* flush the bits to disk */
5431 } else if (mddev->bitmap) {
5432 ret = sprintf(page, "bitmap\n");
6024 struct bitmap *bitmap;
6026 bitmap = md_bitmap_create(mddev, -1);
6027 if (IS_ERR(bitmap)) {
6028 err = PTR_ERR(bitmap);
6029 pr_warn("%s: failed to create bitmap (%d)\n",
6032 mddev->bitmap = bitmap;
6674 if (mddev->bitmap && mddev->bitmap_info.offset)
6704 /* bitmap enabled */
6874 if (has_journal || mddev->bitmap) {
7094 /* we should be able to change the bitmap.. */
7101 if (mddev->bitmap || mddev->bitmap_info.file)
7102 return -EEXIST; /* cannot add when bitmap is present */
7106 pr_warn("%s: error: failed to get bitmap file\n",
7113 pr_warn("%s: error: bitmap file must be a regular file\n",
7117 pr_warn("%s: error: bitmap file must open for write\n",
7121 pr_warn("%s: error: bitmap file is already in use\n",
7131 } else if (mddev->bitmap == NULL)
7136 struct bitmap *bitmap;
7138 bitmap = md_bitmap_create(mddev, -1);
7140 if (!IS_ERR(bitmap)) {
7141 mddev->bitmap = bitmap;
7144 err = PTR_ERR(bitmap);
7367 if (mddev->bitmap && mddev->bitmap_info.offset)
7427 struct bitmap *bitmap;
7428 /* add the bitmap */
7429 if (mddev->bitmap) {
7441 bitmap = md_bitmap_create(mddev, -1);
7443 if (!IS_ERR(bitmap)) {
7444 mddev->bitmap = bitmap;
7447 rv = PTR_ERR(bitmap);
7452 /* remove the bitmap */
7453 if (!mddev->bitmap) {
7457 if (mddev->bitmap->storage.file) {
7462 /* hold PW on all the bitmap lock */
7464 pr_warn("md: can't change bitmap to none since the array is in use by more than one node\n");
8364 md_bitmap_status(seq, mddev->bitmap);
8807 /* we don't use the checkpoint if there's a bitmap */
8810 else if (!mddev->bitmap)
8837 /* If there is a bitmap, we need to make sure all
8841 * bitmap_endwrite) set a bit in the bitmap after the
8845 if (mddev->bitmap) {
9257 if (mddev->bitmap)
9393 * which has the bitmap stored on all devices.
9394 * So make sure all bitmap pages get written
9396 md_bitmap_write_all(mddev->bitmap);
9653 md_bitmap_update_sb(mddev->bitmap);