search for: queue_flag_set

Displaying 20 results from an estimated 25 matches for "queue_flag_set".

2013 Nov 21
0
[PATCH v2 RFC 2/3] virtio_blk: add virtblk_notify() as virtio_driver's notify() callback
...ce *vdev) ida_simple_remove(&vd_index_ida, index); } +static int virtblk_notify(struct virtio_device *vdev, int event) +{ + struct virtio_blk *vblk = vdev->priv; + unsigned long flags; + + if (event == VDEV_GONE) { + spin_lock_irqsave(vblk->disk->queue->queue_lock, flags); + queue_flag_set(QUEUE_FLAG_DYING, vblk->disk->queue); + queue_flag_set(QUEUE_FLAG_NOMERGES, vblk->disk->queue); + queue_flag_set(QUEUE_FLAG_NOXMERGES, vblk->disk->queue); + spin_unlock_irqrestore(vblk->disk->queue->queue_lock, flags); + } + return NOTIFY_DONE; +} + #ifdef CONFIG_PM...
2013 Nov 27
0
[PATCH v3 RFC 2/4] virtio_blk: avoid further request queueing on device loss
...handler from accessing the device. */ @@ -882,6 +883,14 @@ static void virtblk_remove(struct virtio_device *vdev) vblk->config_enable = false; mutex_unlock(&vblk->config_lock); + if (vdev->surprize_removal) { + spin_lock_irqsave(vblk->disk->queue->queue_lock, flags); + queue_flag_set(QUEUE_FLAG_DYING, vblk->disk->queue); + queue_flag_set(QUEUE_FLAG_NOMERGES, vblk->disk->queue); + queue_flag_set(QUEUE_FLAG_NOXMERGES, vblk->disk->queue); + spin_unlock_irqrestore(vblk->disk->queue->queue_lock, flags); + } + del_gendisk(vblk->disk); blk_cleanup_...
2013 Dec 13
0
[PATCH v4 RFC 2/3] virtio: introduce 'device_lost' flag in virtio_device
...from accessing the device. */ mutex_lock(&vblk->config_lock); vblk->config_enable = false; mutex_unlock(&vblk->config_lock); + device_lost = atomic_read(&vdev->device_lost); + if (device_lost) { + spin_lock_irqsave(vblk->disk->queue->queue_lock, flags); + queue_flag_set(QUEUE_FLAG_DYING, vblk->disk->queue); + queue_flag_set(QUEUE_FLAG_NOMERGES, vblk->disk->queue); + queue_flag_set(QUEUE_FLAG_NOXMERGES, vblk->disk->queue); + spin_unlock_irqrestore(vblk->disk->queue->queue_lock, flags); + } + del_gendisk(vblk->disk); - blk_cleanup_...
2013 Dec 13
7
[PATCH v4 RFC 0/3] virtio: add 'device_lost' to virtio_device
...oid hangs in blk_cleanup_queue() due to waits on 'in-flight' requests - set surprize_removal in virtio_ccw's notify callback when a device is lost v1->v2 changes: - add include of linux/notifier.h (I also added it to the 3rd patch) - get queue lock in order to be able to use safe queue_flag_set() functions in virtblk_notify() handler Heinz Graalfs (3): virtio_ccw: fix vcdev pointer handling issues virtio: introduce 'device_lost' flag in virtio_device virtio_ccw: set 'device_lost' on CIO_GONE notification drivers/block/virtio_blk.c | 14 ++++++++++- drivers/...
2013 Dec 13
7
[PATCH v4 RFC 0/3] virtio: add 'device_lost' to virtio_device
...oid hangs in blk_cleanup_queue() due to waits on 'in-flight' requests - set surprize_removal in virtio_ccw's notify callback when a device is lost v1->v2 changes: - add include of linux/notifier.h (I also added it to the 3rd patch) - get queue lock in order to be able to use safe queue_flag_set() functions in virtblk_notify() handler Heinz Graalfs (3): virtio_ccw: fix vcdev pointer handling issues virtio: introduce 'device_lost' flag in virtio_device virtio_ccw: set 'device_lost' on CIO_GONE notification drivers/block/virtio_blk.c | 14 ++++++++++- drivers/...
2013 Nov 21
5
[PATCH v2 RFC 0/3] virtio: add new notify() callback to virtio_driver
...ystem z's CIO notify handler callback, and adding a corresponding new virtio_driver notify() handler to 'inform' the block layer, solve this task. v1->v2 changes: - add include of linux/notifier.h (I also added it to the 3rd patch) - get queue lock in order to be able to use safe queue_flag_set() functions in virtblk_notify() handler Patch 1 adds an optional notify() callback to virtio_driver. Patch 2 adds a new notify() callback for the virtio_blk driver. When called for a lost device settings are made to prevent future request queueing. Patch 3 modifies the CIO notify handler in...
2013 Nov 21
5
[PATCH v2 RFC 0/3] virtio: add new notify() callback to virtio_driver
...ystem z's CIO notify handler callback, and adding a corresponding new virtio_driver notify() handler to 'inform' the block layer, solve this task. v1->v2 changes: - add include of linux/notifier.h (I also added it to the 3rd patch) - get queue lock in order to be able to use safe queue_flag_set() functions in virtblk_notify() handler Patch 1 adds an optional notify() callback to virtio_driver. Patch 2 adds a new notify() callback for the virtio_blk driver. When called for a lost device settings are made to prevent future request queueing. Patch 3 modifies the CIO notify handler in...
2013 Nov 27
7
[PATCH v3 RFC 0/4] virtio: add 'surprize_removal' to virtio_device
...oid hangs in blk_cleanup_queue() due to waits on 'in-flight' requests - set surprize_removal in virtio_ccw's notify callback when a device is lost v1->v2 changes: - add include of linux/notifier.h (I also added it to the 3rd patch) - get queue lock in order to be able to use safe queue_flag_set() functions in virtblk_notify() handler Heinz Graalfs (4): virtio: add surprize_removal to virtio_device virtio_blk: avoid further request queueing on device loss virtio_blk: avoid calling blk_cleanup_queue() on device loss virtio_ccw: set surprize_removal in virtio_device if a device...
2013 Nov 27
7
[PATCH v3 RFC 0/4] virtio: add 'surprize_removal' to virtio_device
...oid hangs in blk_cleanup_queue() due to waits on 'in-flight' requests - set surprize_removal in virtio_ccw's notify callback when a device is lost v1->v2 changes: - add include of linux/notifier.h (I also added it to the 3rd patch) - get queue lock in order to be able to use safe queue_flag_set() functions in virtblk_notify() handler Heinz Graalfs (4): virtio: add surprize_removal to virtio_device virtio_blk: avoid further request queueing on device loss virtio_blk: avoid calling blk_cleanup_queue() on device loss virtio_ccw: set surprize_removal in virtio_device if a device...
2008 Nov 14
2
[PATCH RFC] virtio: use QUEUE_FLAG_CLUSTER in virtio_blk
...0; return 0; } @@ -260,6 +271,9 @@ /* If barriers are supported, tell block layer that queue is ordered */ if (virtio_has_feature(vdev, VIRTIO_BLK_F_BARRIER)) blk_queue_ordered(vblk->disk->queue, QUEUE_ORDERED_TAG, NULL); + + /* Gather adjacent buffers to minimize sg length. */ + queue_flag_set(QUEUE_FLAG_CLUSTER, vblk->disk->queue); /* If disk is read-only in the host, the guest should obey */ if (virtio_has_feature(vdev, VIRTIO_BLK_F_RO))
2008 Nov 14
2
[PATCH RFC] virtio: use QUEUE_FLAG_CLUSTER in virtio_blk
...0; return 0; } @@ -260,6 +271,9 @@ /* If barriers are supported, tell block layer that queue is ordered */ if (virtio_has_feature(vdev, VIRTIO_BLK_F_BARRIER)) blk_queue_ordered(vblk->disk->queue, QUEUE_ORDERED_TAG, NULL); + + /* Gather adjacent buffers to minimize sg length. */ + queue_flag_set(QUEUE_FLAG_CLUSTER, vblk->disk->queue); /* If disk is read-only in the host, the guest should obey */ if (virtio_has_feature(vdev, VIRTIO_BLK_F_RO))
2013 Dec 17
2
[PATCH v4 RFC 0/3] virtio: add 'device_lost' to virtio_device
...n 'in-flight' requests >> - set surprize_removal in virtio_ccw's notify callback when a device is lost >> >> v1->v2 changes: >> - add include of linux/notifier.h (I also added it to the 3rd patch) >> - get queue lock in order to be able to use safe queue_flag_set() functions >> in virtblk_notify() handler >> >> >> Heinz Graalfs (3): >> virtio_ccw: fix vcdev pointer handling issues >> virtio: introduce 'device_lost' flag in virtio_device >> virtio_ccw: set 'device_lost' on CIO_GONE notifi...
2013 Dec 17
2
[PATCH v4 RFC 0/3] virtio: add 'device_lost' to virtio_device
...n 'in-flight' requests >> - set surprize_removal in virtio_ccw's notify callback when a device is lost >> >> v1->v2 changes: >> - add include of linux/notifier.h (I also added it to the 3rd patch) >> - get queue lock in order to be able to use safe queue_flag_set() functions >> in virtblk_notify() handler >> >> >> Heinz Graalfs (3): >> virtio_ccw: fix vcdev pointer handling issues >> virtio: introduce 'device_lost' flag in virtio_device >> virtio_ccw: set 'device_lost' on CIO_GONE notifi...
2014 Jan 28
2
[PATCH v4 RFC 0/3] virtio: add 'device_lost' to virtio_device
...n 'in-flight' requests >> - set surprize_removal in virtio_ccw's notify callback when a device is lost >> >> v1->v2 changes: >> - add include of linux/notifier.h (I also added it to the 3rd patch) >> - get queue lock in order to be able to use safe queue_flag_set() functions >> in virtblk_notify() handler >> >> >> Heinz Graalfs (3): >> virtio_ccw: fix vcdev pointer handling issues >> virtio: introduce 'device_lost' flag in virtio_device >> virtio_ccw: set 'device_lost' on CIO_GONE notifi...
2014 Jan 28
2
[PATCH v4 RFC 0/3] virtio: add 'device_lost' to virtio_device
...n 'in-flight' requests >> - set surprize_removal in virtio_ccw's notify callback when a device is lost >> >> v1->v2 changes: >> - add include of linux/notifier.h (I also added it to the 3rd patch) >> - get queue lock in order to be able to use safe queue_flag_set() functions >> in virtblk_notify() handler >> >> >> Heinz Graalfs (3): >> virtio_ccw: fix vcdev pointer handling issues >> virtio: introduce 'device_lost' flag in virtio_device >> virtio_ccw: set 'device_lost' on CIO_GONE notifi...
2014 Jan 23
0
[PATCH v4 RFC 0/3] virtio: add 'device_lost' to virtio_device
..._queue() due to waits on 'in-flight' requests > - set surprize_removal in virtio_ccw's notify callback when a device is lost > > v1->v2 changes: > - add include of linux/notifier.h (I also added it to the 3rd patch) > - get queue lock in order to be able to use safe queue_flag_set() functions > in virtblk_notify() handler > > > Heinz Graalfs (3): > virtio_ccw: fix vcdev pointer handling issues > virtio: introduce 'device_lost' flag in virtio_device > virtio_ccw: set 'device_lost' on CIO_GONE notification > > drivers/block/...
2013 Dec 17
0
[PATCH v4 RFC 0/3] virtio: add 'device_lost' to virtio_device
..._queue() due to waits on 'in-flight' requests > - set surprize_removal in virtio_ccw's notify callback when a device is lost > > v1->v2 changes: > - add include of linux/notifier.h (I also added it to the 3rd patch) > - get queue lock in order to be able to use safe queue_flag_set() functions > in virtblk_notify() handler > > > Heinz Graalfs (3): > virtio_ccw: fix vcdev pointer handling issues > virtio: introduce 'device_lost' flag in virtio_device > virtio_ccw: set 'device_lost' on CIO_GONE notification > > drivers/block/...
2013 Dec 23
2
[PATCH v4 RFC 0/3] virtio: add 'device_lost' to virtio_device
...> - set surprize_removal in virtio_ccw's notify callback when a device is lost >>>> >>>> v1->v2 changes: >>>> - add include of linux/notifier.h (I also added it to the 3rd patch) >>>> - get queue lock in order to be able to use safe queue_flag_set() functions >>>> in virtblk_notify() handler >>>> >>>> >>>> Heinz Graalfs (3): >>>> virtio_ccw: fix vcdev pointer handling issues >>>> virtio: introduce 'device_lost' flag in virtio_device >>>>...
2013 Dec 23
2
[PATCH v4 RFC 0/3] virtio: add 'device_lost' to virtio_device
...> - set surprize_removal in virtio_ccw's notify callback when a device is lost >>>> >>>> v1->v2 changes: >>>> - add include of linux/notifier.h (I also added it to the 3rd patch) >>>> - get queue lock in order to be able to use safe queue_flag_set() functions >>>> in virtblk_notify() handler >>>> >>>> >>>> Heinz Graalfs (3): >>>> virtio_ccw: fix vcdev pointer handling issues >>>> virtio: introduce 'device_lost' flag in virtio_device >>>>...
2013 Dec 19
0
[PATCH v4 RFC 0/3] virtio: add 'device_lost' to virtio_device
...; requests >>> - set surprize_removal in virtio_ccw's notify callback when a device is lost >>> >>> v1->v2 changes: >>> - add include of linux/notifier.h (I also added it to the 3rd patch) >>> - get queue lock in order to be able to use safe queue_flag_set() functions >>> in virtblk_notify() handler >>> >>> >>> Heinz Graalfs (3): >>> virtio_ccw: fix vcdev pointer handling issues >>> virtio: introduce 'device_lost' flag in virtio_device >>> virtio_ccw: set 'device_...