From: "Khan, Imran" <kimran@codeaurora.org>
To: Akinobu Mita <akinobu.mita@gmail.com>
Cc: "\"axboe"@kernel.dk, axboe@fb.com, hch@lst.de,
"tom.leiming\""@gmail.com, "\"linux-block"@vger.kernel.org,
"\"linux-kernel\\\"\"@vger.kernel.org;tsoni"@codeaurora.org
Subject: Re: [Query] increased latency observed in cpu hotplug path
Date: Fri, 5 Aug 2016 12:49:04 +0530 [thread overview]
Message-ID: <9024c612-670e-7220-6883-352c786b0b1e@codeaurora.org> (raw)
In-Reply-To: <62d2e666-1ae3-f320-013d-e2cfc98770b8@codeaurora.org>
On 8/1/2016 2:58 PM, Khan, Imran wrote:
> On 7/30/2016 7:54 AM, Akinobu Mita wrote:
>> 2016-07-28 22:18 GMT+09:00 Khan, Imran <kimran@codeaurora.org>:
>>>
>>> Hi,
>>>
>>> Recently we have observed some increased latency in CPU hotplug
>>> event in CPU online path. For online latency we see that block
>>> layer is executing notification handler for CPU_UP_PREPARE event
>>> and this in turn waits for RCU grace period resulting (sometimes)
>>> in an execution time of 15-20 ms for this notification handler.
>>> This change was not there in 3.18 kernel but is present in 4.4
>>> kernel and was introduced by following commit:
>>>
>>>
>>> commit 5778322e67ed34dc9f391a4a5cbcbb856071ceba
>>> Author: Akinobu Mita <akinobu.mita@gmail.com>
>>> Date: Sun Sep 27 02:09:23 2015 +0900
>>>
>>> blk-mq: avoid inserting requests before establishing new mapping
>>
>> ...
>>
>>> Upon reverting this commit I could see an improvement of 15-20 ms in
>>> online latency. So I am looking for some help in analyzing the effects
>>> of reverting this or should some other approach to reduce the online
>>> latency must be taken.
>>
>> Can you observe the difference in online latency by removing
>> get_online_cpus() and put_online_cpus() pair in blk_mq_init_allocated_queue()
>> instead of full reverting the commit?
>>
> Hi Akinobu,
> I tried your suggestion but could not achieve any improvement. Actually the snippet that is causing the change in latency is the following one :
>
> list_for_each_entry(q, &all_q_list, all_q_node) {
> blk_mq_freeze_queue_wait(q);
>
> /*
> * timeout handler can't touch hw queue during the
> * reinitialization
> */
> del_timer_sync(&q->timeout);
> }
>
> I understand that this is getting executed now for CPU_UP_PREPARE as well resulting in
> increased latency in the cpu online path. I am trying to reduce this latency while keeping the
> purpose of this commit intact. I would welcome further suggestions/feedback in this regard.
>
Hi Akinobu,
I am not able to reduce the cpu online latency with this patch, could you please let me know what
functionality will be broken, if we avoid this patch in our kernel. Also if you have some other
suggestions towards improving this patch please let me know.
--
Imran Khan
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a\nmember of the Code Aurora Forum, hosted by The Linux Foundation
next prev parent reply other threads:[~2016-08-05 7:19 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-28 13:18 Khan, Imran
[not found] ` <CAC5umyi46+iiKS=924xOdVj4++qPgfXkjM-hqg+e68LPDM2izQ@mail.gmail.com>
2016-08-01 9:28 ` Khan, Imran
2016-08-05 7:19 ` Khan, Imran [this message]
2016-08-16 5:53 ` Khan, Imran
2016-08-17 16:47 ` Khan, Imran
[not found] <CAC5umyj04kkoufz3me17Xqk_b-eqxPqocJHmRAKr+UkBawV+xQ@mail.gmail.com>
[not found] ` <34042993-30f9-81e0-622d-9cd4283624b4@codeaurora.org>
[not found] ` <65516437-cf7a-4728-50d1-6d3c4b5a9adc@codeaurora.org>
[not found] ` <faa0cfa9-46e5-f580-654c-5ec7dcc8f977@codeaurora.org>
[not found] ` <7364b95c-a2ef-4c5c-d593-9cdd4501bcc4@codeaurora.org>
[not found] ` <CAC5umygHWDE4t77o29XdVgqNrurHgy+JwpFuc2RDUn2uLRXPTg@mail.gmail.com>
2016-09-22 10:06 ` Khan, Imran
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9024c612-670e-7220-6883-352c786b0b1e@codeaurora.org \
--to=kimran@codeaurora.org \
--cc="\"axboe"@kernel.dk \
--cc="\"linux-block"@vger.kernel.org \
--cc="\"linux-kernel\\\"\"@vger.kernel.org;tsoni"@codeaurora.org \
--cc="tom.leiming\""@gmail.com \
--cc=akinobu.mita@gmail.com \
--cc=axboe@fb.com \
--cc=hch@lst.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome