Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1601557 > unrolled thread
| Started by | Jens Axboe <axboe@kernel.dk> |
|---|---|
| First post | 2017-03-15 18:00 +0100 |
| Last post | 2017-03-15 22:10 +0100 |
| Articles | 3 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH RFC 10/14] block, bfq: add Early Queue Merge (EQM) Jens Axboe <axboe@kernel.dk> - 2017-03-15 18:00 +0100
Re: [PATCH RFC 10/14] block, bfq: add Early Queue Merge (EQM) Paolo Valente <paolo.valente@linaro.org> - 2017-03-15 18:10 +0100
Re: [PATCH RFC 10/14] block, bfq: add Early Queue Merge (EQM) Jens Axboe <axboe@kernel.dk> - 2017-03-15 22:10 +0100
| From | Jens Axboe <axboe@kernel.dk> |
|---|---|
| Date | 2017-03-15 18:00 +0100 |
| Subject | Re: [PATCH RFC 10/14] block, bfq: add Early Queue Merge (EQM) |
| Message-ID | <tlkrf-1Wi-3@gated-at.bofh.it> |
On 03/04/2017 09:01 AM, Paolo Valente wrote:
> @@ -6330,7 +7012,41 @@ static void bfq_rq_enqueued(struct bfq_data *bfqd, struct bfq_queue *bfqq,
>
> static void __bfq_insert_request(struct bfq_data *bfqd, struct request *rq)
> {
> - struct bfq_queue *bfqq = RQ_BFQQ(rq);
> + struct bfq_queue *bfqq = RQ_BFQQ(rq), *new_bfqq;
> +
> + /*
> + * An unplug may trigger a requeue of a request from the device
> + * driver: make sure we are in process context while trying to
> + * merge two bfq_queues.
> + */
> + if (!in_interrupt()) {
What's the reason for this? Don't use in_interrupt() to guide any of
your decision making here.
--
Jens Axboe
[toc] | [next] | [standalone]
| From | Paolo Valente <paolo.valente@linaro.org> |
|---|---|
| Date | 2017-03-15 18:10 +0100 |
| Message-ID | <tlkAW-2eY-7@gated-at.bofh.it> |
| In reply to | #1601557 |
> Il giorno 15 mar 2017, alle ore 17:56, Jens Axboe <axboe@kernel.dk> ha scritto:
>
> On 03/04/2017 09:01 AM, Paolo Valente wrote:
>> @@ -6330,7 +7012,41 @@ static void bfq_rq_enqueued(struct bfq_data *bfqd, struct bfq_queue *bfqq,
>>
>> static void __bfq_insert_request(struct bfq_data *bfqd, struct request *rq)
>> {
>> - struct bfq_queue *bfqq = RQ_BFQQ(rq);
>> + struct bfq_queue *bfqq = RQ_BFQQ(rq), *new_bfqq;
>> +
>> + /*
>> + * An unplug may trigger a requeue of a request from the device
>> + * driver: make sure we are in process context while trying to
>> + * merge two bfq_queues.
>> + */
>> + if (!in_interrupt()) {
>
> What's the reason for this?
None :(
Just pre-existing, working code that I did not update, sorry.
> Don't use in_interrupt() to guide any of
> your decision making here.
>
Of course, sorry for these silly mistakes.
Thanks,
Paolo
> --
> Jens Axboe
>
[toc] | [prev] | [next] | [standalone]
| From | Jens Axboe <axboe@kernel.dk> |
|---|---|
| Date | 2017-03-15 22:10 +0100 |
| Message-ID | <tlolc-4TJ-13@gated-at.bofh.it> |
| In reply to | #1601569 |
On 03/15/2017 11:02 AM, Paolo Valente wrote:
>
>> Il giorno 15 mar 2017, alle ore 17:56, Jens Axboe <axboe@kernel.dk> ha scritto:
>>
>> On 03/04/2017 09:01 AM, Paolo Valente wrote:
>>> @@ -6330,7 +7012,41 @@ static void bfq_rq_enqueued(struct bfq_data *bfqd, struct bfq_queue *bfqq,
>>>
>>> static void __bfq_insert_request(struct bfq_data *bfqd, struct request *rq)
>>> {
>>> - struct bfq_queue *bfqq = RQ_BFQQ(rq);
>>> + struct bfq_queue *bfqq = RQ_BFQQ(rq), *new_bfqq;
>>> +
>>> + /*
>>> + * An unplug may trigger a requeue of a request from the device
>>> + * driver: make sure we are in process context while trying to
>>> + * merge two bfq_queues.
>>> + */
>>> + if (!in_interrupt()) {
>>
>> What's the reason for this?
>
> None :(
>
> Just pre-existing, working code that I did not update, sorry.
OK good, then that check can simply be killed.
--
Jens Axboe
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web