search for: blk_execute_rq

Displaying 20 results from an estimated 23 matches for "blk_execute_rq".

2006 Jan 06
2
3ware disk failure -> hang
...10 $SERVER kernel: [<f884417e>] scsi_request_fn+0x297/0x30d [scsi_mod] Jan 6 01:04:10 $SERVER kernel: [<c0221f68>] __generic_unplug_device+0x2b/0x2d Jan 6 01:04:10 $SERVER kernel: [<c0221f7f>] generic_unplug_device+0x15/0x21 Jan 6 01:04:10 $SERVER kernel: [<c022288d>] blk_execute_rq+0x88/0xb0 Jan 6 01:04:10 $SERVER kernel: [<c022096e>] elv_set_request+0xa/0x17 Jan 6 01:04:10 $SERVER kernel: [<c022251f>] get_request+0x1de/0x1e8 Jan 6 01:04:10 $SERVER kernel: [<c01a97c3>] task_has_capability+0x4a/0x52 Jan 6 01:04:10 $SERVER kernel: [<c0225cd5>] sg...
2016 Oct 03
1
[PATCH 4/4] virtio_blk: Rename a jump label in virtblk_get_id()
...lk.c > @@ -247,10 +247,10 @@ static int virtblk_get_id(struct gendisk *disk, char *id_str) > > err = blk_rq_map_kern(q, req, id_str, VIRTIO_BLK_ID_BYTES, GFP_KERNEL); > if (err) > - goto out; > + goto put_request; > > err = blk_execute_rq(vblk->disk->queue, vblk->disk, req, false); > -out: > + put_request: I checked Documentation/CodingStyle and see no reason to rename the label. It's also not clear why you added a space. The CodingStyle example does not use a space before the label.
2016 Oct 03
1
[PATCH 4/4] virtio_blk: Rename a jump label in virtblk_get_id()
...lk.c > @@ -247,10 +247,10 @@ static int virtblk_get_id(struct gendisk *disk, char *id_str) > > err = blk_rq_map_kern(q, req, id_str, VIRTIO_BLK_ID_BYTES, GFP_KERNEL); > if (err) > - goto out; > + goto put_request; > > err = blk_execute_rq(vblk->disk->queue, vblk->disk, req, false); > -out: > + put_request: I checked Documentation/CodingStyle and see no reason to rename the label. It's also not clear why you added a space. The CodingStyle example does not use a space before the label.
2009 Sep 29
0
[PATCH 3/4] virtio_blk: implement a request-based ID command, VIRTIO_BLK_T_GET_ID
This is fairly simple: we create a request pointing at the 1k kmalloc, then just change the type so our do_req() knows to mark it as a GET_ID for the server. Seems to work here; the only issue is that the error didn't get passed back from __blk_end_request_all to blk_execute_rq, so we set ->errors to 1 on error. Signed-off-by: Rusty Russell <rusty at rustcorp.com.au> Cc: Jens Axboe <axboe at kernel.dk> --- drivers/block/virtio_blk.c | 66 +++++++++++++++++++++++++++++++++++---------- include/linux/virtio_blk.h | 4 ++ 2 files changed, 56 insertions(+...
2009 Sep 29
0
[PATCH 3/4] virtio_blk: implement a request-based ID command, VIRTIO_BLK_T_GET_ID
This is fairly simple: we create a request pointing at the 1k kmalloc, then just change the type so our do_req() knows to mark it as a GET_ID for the server. Seems to work here; the only issue is that the error didn't get passed back from __blk_end_request_all to blk_execute_rq, so we set ->errors to 1 on error. Signed-off-by: Rusty Russell <rusty at rustcorp.com.au> Cc: Jens Axboe <axboe at kernel.dk> --- drivers/block/virtio_blk.c | 66 +++++++++++++++++++++++++++++++++++---------- include/linux/virtio_blk.h | 4 ++ 2 files changed, 56 insertions(+...
2016 Oct 09
1
[PATCH 4/4] virtio_blk: Rename a jump label in virtblk_get_id()
..._blk.c > +++ b/drivers/block/virtio_blk.c > @@ -247,10 +247,10 @@ static int virtblk_get_id(struct gendisk *disk, char *id_str) > > err = blk_rq_map_kern(q, req, id_str, VIRTIO_BLK_ID_BYTES, GFP_KERNEL); > if (err) > - goto out; > + goto put_request; > > err = blk_execute_rq(vblk->disk->queue, vblk->disk, req, false); > -out: > + put_request: > blk_put_request(req); > return err; > } > -- > 2.10.0
2016 Oct 09
1
[PATCH 4/4] virtio_blk: Rename a jump label in virtblk_get_id()
..._blk.c > +++ b/drivers/block/virtio_blk.c > @@ -247,10 +247,10 @@ static int virtblk_get_id(struct gendisk *disk, char *id_str) > > err = blk_rq_map_kern(q, req, id_str, VIRTIO_BLK_ID_BYTES, GFP_KERNEL); > if (err) > - goto out; > + goto put_request; > > err = blk_execute_rq(vblk->disk->queue, vblk->disk, req, false); > -out: > + put_request: > blk_put_request(req); > return err; > } > -- > 2.10.0
2012 Aug 13
0
[ 01/82] virtio-blk: Call del_gendisk() before disable guest kick
...through interrupt del_gendisk() device_del() kobject_del(): got stuck, sysfs entry ref count non zero sysfs_open_file(): user space process read /sys/block/vda/serial sysfs_get_active() : got sysfs entry ref count dev_attr_show() virtblk_serial_show() blk_execute_rq() : got stuck, interrupt is disabled request cannot be finished This patch fixes it by calling del_gendisk() before we disable guest's interrupt so that the request sent in virtblk_serial_show() will be finished and del_gendisk() will success. This fixes another...
2012 Aug 13
0
[ 01/82] virtio-blk: Call del_gendisk() before disable guest kick
...through interrupt del_gendisk() device_del() kobject_del(): got stuck, sysfs entry ref count non zero sysfs_open_file(): user space process read /sys/block/vda/serial sysfs_get_active() : got sysfs entry ref count dev_attr_show() virtblk_serial_show() blk_execute_rq() : got stuck, interrupt is disabled request cannot be finished This patch fixes it by calling del_gendisk() before we disable guest's interrupt so that the request sent in virtblk_serial_show() will be finished and del_gendisk() will success. This fixes another...
2014 Jun 10
0
[PATCH 3.4 45/88] virtio-blk: Call del_gendisk() before disable guest kick
...through interrupt del_gendisk() device_del() kobject_del(): got stuck, sysfs entry ref count non zero sysfs_open_file(): user space process read /sys/block/vda/serial sysfs_get_active() : got sysfs entry ref count dev_attr_show() virtblk_serial_show() blk_execute_rq() : got stuck, interrupt is disabled request cannot be finished This patch fixes it by calling del_gendisk() before we disable guest's interrupt so that the request sent in virtblk_serial_show() will be finished and del_gendisk() will success. This fixes another...
2014 Jun 10
0
[PATCH 3.4 45/88] virtio-blk: Call del_gendisk() before disable guest kick
...through interrupt del_gendisk() device_del() kobject_del(): got stuck, sysfs entry ref count non zero sysfs_open_file(): user space process read /sys/block/vda/serial sysfs_get_active() : got sysfs entry ref count dev_attr_show() virtblk_serial_show() blk_execute_rq() : got stuck, interrupt is disabled request cannot be finished This patch fixes it by calling del_gendisk() before we disable guest's interrupt so that the request sent in virtblk_serial_show() will be finished and del_gendisk() will success. This fixes another...
2010 Apr 26
9
passthrough PCI SCSI device
I have a sles10sp3 vm that I''m trying to passthrough a scsi card, which has a DLT tape drive attached. Anyone doing anything similar? When I passthrough the scsi card (forced to do both ports), the vm dies when it loads, I think during udev. I''m viewing the vm through virt-manager, so I can''t scroll up and see what everything says. Is there a way to get the text xm
2012 May 21
6
[RFC PATCH 1/5] block: Introduce q->abort_queue_fn()
When user hot-unplug a disk which is busy serving I/O, __blk_run_queue might be unable to drain all the requests. As a result, the blk_drain_queue() would loop forever and blk_cleanup_queue would not return. So hot-unplug will fail. This patch adds a callback in blk_drain_queue() for low lever driver to abort requests. Currently, this is useful for virtio-blk to do cleanup in hot-unplug. Cc:
2012 May 21
6
[RFC PATCH 1/5] block: Introduce q->abort_queue_fn()
When user hot-unplug a disk which is busy serving I/O, __blk_run_queue might be unable to drain all the requests. As a result, the blk_drain_queue() would loop forever and blk_cleanup_queue would not return. So hot-unplug will fail. This patch adds a callback in blk_drain_queue() for low lever driver to abort requests. Currently, this is useful for virtio-blk to do cleanup in hot-unplug. Cc:
2010 Jul 07
2
Bug#588310: Xen enabled kernel cannot find the / partition
...? blk_peek_request+0x18b/0x19f [ 373.555238] [<ffffffff8130c2f2>] ? _spin_unlock_irqrestore+0xd/0xe [ 373.630188] [<ffffffff8130b1dc>] ? wait_for_common+0xde/0x15b [ 373.699934] [<ffffffff8104c144>] ? default_wake_function+0x0/0x9 [ 373.772807] [<ffffffff811839a1>] ? blk_execute_rq+0x9d/0xd0 [ 373.840476] [<ffffffff8117ed15>] ? blk_rq_bio_prep+0x39/0x69 [ 373.909180] [<ffffffff8118361f>] ? blk_rq_map_kern+0xe8/0x114 [ 373.978928] [<ffffffffa002a2e8>] ? scsi_execute+0xdc/0x12f [scsi_mod] [ 374.057003] [<ffffffffa002a37b>] ? scsi_execute_req+0x40...
2012 May 25
9
[PATCH 0/3] Fix hot-unplug race in virtio-blk
This patch set fixes the race when hot-unplug stressed disk. Asias He (3): virtio-blk: Call del_gendisk() before disable guest kick virtio-blk: Reset device after blk_cleanup_queue() virtio-blk: Use block layer provided spinlock drivers/block/virtio_blk.c | 25 ++++++------------------- 1 file changed, 6 insertions(+), 19 deletions(-) -- 1.7.10.2
2012 May 25
9
[PATCH 0/3] Fix hot-unplug race in virtio-blk
This patch set fixes the race when hot-unplug stressed disk. Asias He (3): virtio-blk: Call del_gendisk() before disable guest kick virtio-blk: Reset device after blk_cleanup_queue() virtio-blk: Use block layer provided spinlock drivers/block/virtio_blk.c | 25 ++++++------------------- 1 file changed, 6 insertions(+), 19 deletions(-) -- 1.7.10.2
2007 Jan 02
0
[PATCH 1/4] add scsi-target and IO_CMD_EPOLL_WAIT patches
...s/cdrom/cdrom.c +index e866df0..3588e76 100644 +--- a/drivers/cdrom/cdrom.c ++++ b/drivers/cdrom/cdrom.c +@@ -2133,16 +2133,14 @@ static int cdrom_read_cdda_bpc(struct cd + rq->timeout = 60 * HZ; + bio = rq->bio; + +- if (rq->bio) +- blk_queue_bounce(q, &rq->bio); +- + if (blk_execute_rq(q, cdi->disk, rq, 0)) { + struct request_sense *s = rq->sense; + ret = -EIO; + cdi->last_sense = s->sense_key; + } + +- if (blk_rq_unmap_user(bio, len)) ++ rq->bio = bio; ++ if (blk_rq_unmap_user(rq)) + ret = -EFAULT; + + if (ret) +diff --git a/drivers/scsi/Kconf...
2010 Oct 08
5
Slow link/Capacity changed + Kernel OOPS... possible hardware issues, ideas?
...+0xf/0x20 Oct 8 02:40:43 (none) kernel: [<c12e6696>] wait_for_common+0x96/0x120 Oct 8 02:40:43 (none) kernel: [<c103df80>] ? default_wake_function+0x0/0x10 Oct 8 02:40:43 (none) kernel: [<c12e67c2>] wait_for_completion+0x12/0x20 Oct 8 02:40:43 (none) kernel: [<c1176448>] blk_execute_rq+0x78/0xd0 Oct 8 02:40:43 (none) kernel: [<c1176310>] ? blk_end_sync_rq+0x0/0x30 Oct 8 02:40:43 (none) kernel: [<c117295d>] ? get_request_wait+0x1d/0x190 Oct 8 02:40:43 (none) kernel: [<c103570d>] ? wakeup_preempt_entity.clone.94+0x8d/0xa0 Oct 8 02:40:43 (none) kernel: [<c11...
2012 Apr 20
1
[PATCH] multiqueue: a hodge podge of things
...t after this complete() */ complete(waiting); } /** @@ -43,33 +43,39 @@ static void blk_end_sync_rq(struct request *rq, int error) * Description: * Insert a fully prepared request at the back of the I/O scheduler queue * for execution. Don't wait for completion. */ void blk_execute_rq_nowait(struct request_queue *q, struct gendisk *bd_disk, struct request *rq, int at_head, rq_end_io_fn *done) { int where = at_head ? ELEVATOR_INSERT_FRONT : ELEVATOR_INSERT_BACK; + struct blk_queue_ctx *ctx; WARN_ON(irqs_disabled()); - spin_lock_irq(q->queue_lock); + + /* F...