Re: [PATCH 03/17] ps3disk: convert to blk-mq

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jens,

On 10/15/2018 11:38 AM, Jens Axboe wrote:
> Weird, it looks like we're waiting for something to complete, and then
> we have a few others waiting for queue new IO.
> 
> Can you try and move the blk_mq_end_request() inside the priv->lock
> section and see if that helps?

With the change below to your V2 I can't get it to have an
error.  I did mkfs.ext4, some big file downloads, and ran
'fsck.ext3 -c' for a while.

Thanks for working late on it.

-Geoff

--- a/drivers/block/ps3disk.c
+++ b/drivers/block/ps3disk.c
@@ -274,10 +274,9 @@ static irqreturn_t ps3disk_interrupt(int irq, void *data)
                        ps3disk_scatter_gather(dev, req, 0);
        }
 
-       blk_mq_end_request(req, error);
-
        spin_lock(&priv->lock);
        priv->req = NULL;
+       blk_mq_end_request(req, error);
        spin_unlock(&priv->lock);
 
        blk_mq_run_hw_queues(priv->queue, true);
@@ -458,7 +457,7 @@ static int ps3disk_probe(struct ps3_system_bus_device *_dev)
        set = &priv->tag_set;
        set->ops = &ps3disk_mq_ops;
        set->nr_hw_queues = 1;
-       set->queue_depth = 2;
+       set->queue_depth = 1;
        set->numa_node = NUMA_NO_NODE;
        set->flags = BLK_MQ_F_SHOULD_MERGE;
        error = blk_mq_alloc_tag_set(set);






[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux