Lines Matching refs:badblocks
715 kfree(rdev->badblocks.page); in md_rdev_clear()
716 rdev->badblocks.page = NULL; in md_rdev_clear()
996 rdev->badblocks.shift = -1; in super_90_load()
1366 static int md_set_badblocks(struct badblocks *bb, sector_t s, int sectors,
1464 rdev->badblocks.count == 0) { in super_1_load()
1483 rdev->badblocks.shift = sb->bblog_shift; in super_1_load()
1492 if (md_set_badblocks(&rdev->badblocks, in super_1_load()
1497 rdev->badblocks.shift = 0; in super_1_load()
1767 if (rdev->badblocks.count == 0) in super_1_sync()
1773 struct badblocks *bb = &rdev->badblocks; in super_1_sync()
1905 if (rdev->badblocks.sector + rdev->badblocks.size > new_offset) in super_1_allow_new_offset()
2145 rdev->badblocks.count = 0; in unbind_rdev_from_array()
2327 if (rdev->badblocks.changed) { in md_update_sb()
2328 rdev->badblocks.changed = 0; in md_update_sb()
2329 md_ack_all_badblocks(&rdev->badblocks); in md_update_sb()
2391 if (rdev->badblocks.changed) in md_update_sb()
2418 if (rdev->badblocks.size) { in md_update_sb()
2420 rdev->badblocks.sector, in md_update_sb()
2421 rdev->badblocks.size << 9, in md_update_sb()
2423 rdev->badblocks.size = 0; in md_update_sb()
2455 md_ack_all_badblocks(&rdev->badblocks); in md_update_sb()
2529 rdev->badblocks.unacked_exist) { in state_show()
2546 (rdev->badblocks.unacked_exist in state_show()
2623 rdev->badblocks.unacked_exist) { in state_store()
3064 badblocks_show(struct badblocks *bb, char *page, int unack);
3066 badblocks_store(struct badblocks *bb, const char *page, size_t len, int unack);
3070 return badblocks_show(&rdev->badblocks, page, 0); in bb_show()
3074 int rv = badblocks_store(&rdev->badblocks, page, len, 0); in bb_store()
3085 return badblocks_show(&rdev->badblocks, page, 1); in ubb_show()
3089 return badblocks_store(&rdev->badblocks, page, len, 1); in ubb_store()
3182 rdev->badblocks.count = 0; in md_rdev_init()
3183 rdev->badblocks.shift = -1; /* disabled until explicitly enabled */ in md_rdev_init()
3184 rdev->badblocks.page = kmalloc(PAGE_SIZE, GFP_KERNEL); in md_rdev_init()
3185 seqlock_init(&rdev->badblocks.lock); in md_rdev_init()
3186 if (rdev->badblocks.page == NULL) in md_rdev_init()
8524 int md_is_badblock(struct badblocks *bb, sector_t s, int sectors, in md_is_badblock()
8604 static int md_set_badblocks(struct badblocks *bb, sector_t s, int sectors, in md_set_badblocks()
8754 rv = md_set_badblocks(&rdev->badblocks, in rdev_set_badblocks()
8773 static int md_clear_badblocks(struct badblocks *bb, sector_t s, int sectors) in md_clear_badblocks()
8869 return md_clear_badblocks(&rdev->badblocks, in rdev_clear_badblocks()
8879 void md_ack_all_badblocks(struct badblocks *bb) in md_ack_all_badblocks()
8915 badblocks_show(struct badblocks *bb, char *page, int unack) in badblocks_show()
8956 badblocks_store(struct badblocks *bb, const char *page, size_t len, int unack) in badblocks_store()