Lines Matching refs:device
35 * enumeration. It will also make use of multi-device layouts. Each disk
71 struct btrfs_device *device;
272 zone->device = dev; /* our device always sits at index 0 */
357 /* cannot read ahead on missing device. */
380 /* Insert extent in reada tree + all per-device trees, all or nothing */
409 dev = re->zones[nzones]->device;
414 * are on the same device, there's nothing to gain
416 * Also, it wouldn't work, as the tree is per device
430 * as this device is selected for reading only as
439 dev = re->zones[nzones]->device;
504 radix_tree_delete(&zone->device->reada_extents, index);
534 radix_tree_delete(&zone->device->reada_zones,
590 if (peer && peer->device != zone->device)
733 if (re->zones[i]->device == dev) {
780 struct btrfs_device *device;
784 list_for_each_entry(device, &fs_devices->devices, dev_list) {
785 if (atomic_read(&device->reada_in_flight) <
787 enqueued += reada_start_machine_dev(device);
845 struct btrfs_device *device;
854 list_for_each_entry(device, &fs_devices->devices, dev_list) {
855 btrfs_debug(fs_info, "dev %lld has %d in flight", device->devid,
856 atomic_read(&device->reada_in_flight));
860 ret = radix_tree_gang_lookup(&device->reada_zones,
871 if (device->reada_curr_zone == zone)
873 device->reada_next - zone->start);
882 ret = radix_tree_gang_lookup(&device->reada_extents,
1030 * Before removing a device (device replace or device remove ioctls), call this
1031 * function to wait for all existing readahead requests on the device and to
1032 * make sure no one queues more readahead requests for the device.
1034 * Must be called without holding neither the device list mutex nor the device
1052 * device structure.
1059 * If when removing a device (device replace or device remove ioctls) an error