Re: high overhead of functions blkg_*stats_* in bfq

2017-10-22 Thread Paolo Valente
> Il giorno 21 ott 2017, alle ore 18:13, Tejun Heo ha scritto: > > Hello, Paolo. > > On Thu, Oct 19, 2017 at 08:50:17AM +0200, Paolo Valente wrote: >> The blkg obtained through a blkg_lookup, in a rcu_read section, is >> protected. But, outside that section, a pointer to that blkg is not >> gu

[PATCH] blk-mq: Iterate also over sched_tags requests at blk_mq_tagset_iter()

2017-10-22 Thread Israel Rukshin
Currently, blk_mq_tagset_iter() iterate over initial hctx tags only. In case scheduler is used, it doesn't iterate the hctx scheduler tags and the static request aren't been updated. For example, while using NVMe over Fabrics RDMA host, this cause us not to reinit the scheduler requests and thus no

Re: [RESEND PATCH 1/3] completion: Add support for initializing completion with lockdep_map

2017-10-22 Thread Bart Van Assche
On Sat, 2017-10-21 at 11:23 +0900, Byungchul Park wrote: > On Sat, Oct 21, 2017 at 4:58 AM, Bart Van Assche > wrote: > > As explained in another e-mail thread, unlike the lock inversion checking > > performed by the <= v4.13 lockdep code, cross-release checking is a > > heuristic > > that does n

Re: [PATCH] blk-mq: Iterate also over sched_tags requests at blk_mq_tagset_iter()

2017-10-22 Thread Sagi Grimberg
Currently, blk_mq_tagset_iter() iterate over initial hctx tags only. In case scheduler is used, it doesn't iterate the hctx scheduler tags and the static request aren't been updated. For example, while using NVMe over Fabrics RDMA host, this cause us not to reinit the scheduler requests and thus

Re: [PATCH v2 4/4] lockdep: Assign a lock_class per gendisk used for wait_for_completion()

2017-10-22 Thread Byungchul Park
On Fri, Oct 20, 2017 at 07:44:51AM -0700, Christoph Hellwig wrote: > The Subject prefix for this should be "block:". > > > @@ -945,7 +945,7 @@ int submit_bio_wait(struct bio *bio) > > { > > struct submit_bio_ret ret; > > > > - init_completion(&ret.event); > > + init_completion_with_map(

Re: [RESEND PATCH 1/3] completion: Add support for initializing completion with lockdep_map

2017-10-22 Thread Byungchul Park
On Sun, Oct 22, 2017 at 02:34:56PM +, Bart Van Assche wrote: > On Sat, 2017-10-21 at 11:23 +0900, Byungchul Park wrote: > > On Sat, Oct 21, 2017 at 4:58 AM, Bart Van Assche > > wrote: > > > As explained in another e-mail thread, unlike the lock inversion checking > > > performed by the <= v4.

Re: nvme multipath support V4

2017-10-22 Thread Guan Junxiong
Hi Christoph, On 2017/10/19 0:52, Christoph Hellwig wrote: > Hi all, > > this series adds support for multipathing, that is accessing nvme > namespaces through multiple controllers to the nvme core driver. > > It is a very thin and efficient implementation that relies on > close cooperation wit

Re: [PATCH v2] blk-throttle: track read and write request individually

2017-10-22 Thread Joseph Qi
Hi Jens, Could you please pick this patch? Thanks, Joseph On 17/10/13 01:13, Shaohua Li wrote: > On Thu, Oct 12, 2017 at 05:15:46PM +0800, Joseph Qi wrote: >> From: Joseph Qi >> >> In mixed read/write workload on SSD, write latency is much lower than >> read. But now we only track and record rea

Re: [PATCH 9/9] bsg: split handling of SCSI CDBs vs transport requeues

2017-10-22 Thread Martin K. Petersen
Benjamin, >> Not sure it's worth it especially now that Martin has merged the patch. > > He did? I only saw a mail that he picked patches 2-5. So all the bsg > changes are still open I think. Yes, I expected the bsg bits to go through Jens' tree. -- Martin K. Petersen Oracle Linux Enginee

Re: [PATCH] blk-mq: Iterate also over sched_tags requests at blk_mq_tagset_iter()

2017-10-22 Thread Christoph Hellwig
On Sun, Oct 22, 2017 at 09:32:00PM +0300, Sagi Grimberg wrote: > >> Currently, blk_mq_tagset_iter() iterate over initial hctx tags only. >> In case scheduler is used, it doesn't iterate the hctx scheduler tags >> and the static request aren't been updated. >> For example, while using NVMe over Fabr

Re: [PATCH 9/9] bsg: split handling of SCSI CDBs vs transport requeues

2017-10-22 Thread Christoph Hellwig
On Mon, Oct 23, 2017 at 02:16:03AM -0400, Martin K. Petersen wrote: > > Benjamin, > > >> Not sure it's worth it especially now that Martin has merged the patch. > > > > He did? I only saw a mail that he picked patches 2-5. So all the bsg > > changes are still open I think. > > Yes, I expected th

Re: nvme multipath support V4

2017-10-22 Thread Sagi Grimberg
Guan, If per-controller block device nodes are hidden, how can the user-space tools such as multipath-tools and nvme-cli (if it supports) know status of each path of the multipath device? if at all, the path state is reflected on the controller class device node, not on the namespace block de

Re: [PATCH v2 4/4] lockdep: Assign a lock_class per gendisk used for wait_for_completion()

2017-10-22 Thread Christoph Hellwig
On Mon, Oct 23, 2017 at 08:53:35AM +0900, Byungchul Park wrote: > On Fri, Oct 20, 2017 at 07:44:51AM -0700, Christoph Hellwig wrote: > > The Subject prefix for this should be "block:". > > > > > @@ -945,7 +945,7 @@ int submit_bio_wait(struct bio *bio) > > > { > > > struct submit_bio_ret ret; >

Re: [PATCH] blk-mq: Iterate also over sched_tags requests at blk_mq_tagset_iter()

2017-10-22 Thread Bart Van Assche
On Sun, 2017-10-22 at 13:47 +, Israel Rukshin wrote: > @@ -441,6 +442,8 @@ static int blk_mq_sched_alloc_tags(struct request_queue > *q, > if (!hctx->sched_tags) > return -ENOMEM; > > + set->sched_tags[hctx_idx] = hctx->sched_tags; > + > ret = blk_mq_alloc_rqs(s