Lines Matching refs:device

3690 	struct btrfs_device *device = bio->bi_private;  in btrfs_end_super_write()  local
3695 btrfs_warn_rl(device->fs_info, in btrfs_end_super_write()
3697 btrfs_dev_name(device), in btrfs_end_super_write()
3699 btrfs_dev_stat_inc_and_print(device, in btrfs_end_super_write()
3704 &device->sb_write_errors); in btrfs_end_super_write()
3706 atomic_inc(&device->sb_write_errors); in btrfs_end_super_write()
3725 static int write_dev_supers(struct btrfs_device *device, in write_dev_supers() argument
3728 struct btrfs_fs_info *fs_info = device->fs_info; in write_dev_supers()
3729 struct address_space *mapping = device->bdev->bd_mapping; in write_dev_supers()
3735 atomic_set(&device->sb_write_errors, 0); in write_dev_supers()
3749 ret = btrfs_sb_log_location(device, i, WRITE, &bytenr); in write_dev_supers()
3753 btrfs_err(device->fs_info, in write_dev_supers()
3756 atomic_inc(&device->sb_write_errors); in write_dev_supers()
3760 device->commit_total_bytes) in write_dev_supers()
3773 btrfs_err(device->fs_info, in write_dev_supers()
3776 atomic_inc(&device->sb_write_errors); in write_dev_supers()
3789 bio = bio_alloc(device->bdev, 1, in write_dev_supers()
3793 bio->bi_private = device; in write_dev_supers()
3802 if (i == 0 && !btrfs_test_opt(device->fs_info, NOBARRIER)) in write_dev_supers()
3806 if (btrfs_advance_sb_log(device, i)) in write_dev_supers()
3807 atomic_inc(&device->sb_write_errors); in write_dev_supers()
3809 return atomic_read(&device->sb_write_errors) < i ? 0 : -1; in write_dev_supers()
3819 static int wait_dev_supers(struct btrfs_device *device, int max_mirrors) in wait_dev_supers() argument
3833 ret = btrfs_sb_log_location(device, i, READ, &bytenr); in wait_dev_supers()
3843 device->commit_total_bytes) in wait_dev_supers()
3846 folio = filemap_get_folio(device->bdev->bd_mapping, in wait_dev_supers()
3857 errors += atomic_read(&device->sb_write_errors); in wait_dev_supers()
3861 btrfs_err(device->fs_info, "error writing primary super block to device %llu", in wait_dev_supers()
3862 device->devid); in wait_dev_supers()
3883 static void write_dev_flush(struct btrfs_device *device) in write_dev_flush() argument
3885 struct bio *bio = &device->flush_bio; in write_dev_flush()
3887 device->last_flush_error = BLK_STS_OK; in write_dev_flush()
3889 bio_init(bio, device->bdev, NULL, 0, in write_dev_flush()
3892 init_completion(&device->flush_wait); in write_dev_flush()
3893 bio->bi_private = &device->flush_wait; in write_dev_flush()
3895 set_bit(BTRFS_DEV_STATE_FLUSH_SENT, &device->dev_state); in write_dev_flush()
3902 static bool wait_dev_flush(struct btrfs_device *device) in wait_dev_flush() argument
3904 struct bio *bio = &device->flush_bio; in wait_dev_flush()
3906 if (!test_and_clear_bit(BTRFS_DEV_STATE_FLUSH_SENT, &device->dev_state)) in wait_dev_flush()
3909 wait_for_completion_io(&device->flush_wait); in wait_dev_flush()
3912 device->last_flush_error = bio->bi_status; in wait_dev_flush()
3913 btrfs_dev_stat_inc_and_print(device, BTRFS_DEV_STAT_FLUSH_ERRS); in wait_dev_flush()