linux-block.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] Fixup mtip32xx for scheduling
@ 2017-04-27 22:51 Jens Axboe
  2017-04-27 22:51 ` [PATCH 1/6] mtip32xx: get rid of 'atomic' argument to mtip_exec_internal_command() Jens Axboe
                   ` (6 more replies)
  0 siblings, 7 replies; 20+ messages in thread
From: Jens Axboe @ 2017-04-27 22:51 UTC (permalink / raw)
  To: linux-block; +Cc: ming.lei, hch

This attempts a cleaner solution, where we simply mark a request
as having come from the reserved pool. mtip32xx can then be
converted to using that info, and moving it's internal command
issue over to the regular block infrastructure.

First three are prep/cleanup patches for mtip32xx, which an easier
conversion of the driver.

-- 
Jens Axboe

^ permalink raw reply	[flat|nested] 20+ messages in thread
* [PATCH v2 0/6] Fixup mtip32xx for scheduling
@ 2017-04-28 14:01 Jens Axboe
  2017-04-28 14:01 ` [PATCH 3/6] mtip32xx: abstract out "are any commands active" helper Jens Axboe
  0 siblings, 1 reply; 20+ messages in thread
From: Jens Axboe @ 2017-04-28 14:01 UTC (permalink / raw)
  To: linux-block; +Cc: ming.lei, hch

Round two of this patchset to cleanup. Changes since the first
posting:

- Mark internal commands as REQ_OP_DRV_IN. Doesn't really matter
  what the data direction is, the important bit is that we need
  to ensure the request is seen as a passthrough.

- Remove redundant active = 1 setting in mtip_commands_active().

- Utilize blk-mq timeout infrastructure, to avoid racing with
  cleanup.

-- 
Jens Axboe

^ permalink raw reply	[flat|nested] 20+ messages in thread
* [PATCH v2a 0/6]: Fixup mtip32xx for scheduling
@ 2017-04-28 14:31 Jens Axboe
  2017-04-28 14:31 ` [PATCH 3/6] mtip32xx: abstract out "are any commands active" helper Jens Axboe
  0 siblings, 1 reply; 20+ messages in thread
From: Jens Axboe @ 2017-04-28 14:31 UTC (permalink / raw)
  To: linux-block; +Cc: ming.lei, hch

Since I fat-fingered the previous posting of v2, here's a v2a that
is what v2 should have been. No changes since v2, just for easier
review. Sorry about that.

To recap, changes since v1:

- Mark internal commands as REQ_OP_DRV_IN. Doesn't really matter
  what the data direction is, the important bit is that we need
  to ensure the request is seen as a passthrough.

- Remove redundant active = 1 setting in mtip_commands_active().

- Utilize blk-mq timeout infrastructure, to avoid racing with
  cleanup.

-- 
Jens Axboe

^ permalink raw reply	[flat|nested] 20+ messages in thread
* [PATCH v4 0/6] Fixup mtip32xx for scheduling
@ 2017-04-28 16:54 Jens Axboe
  2017-04-28 16:54 ` [PATCH 3/6] mtip32xx: abstract out "are any commands active" helper Jens Axboe
  0 siblings, 1 reply; 20+ messages in thread
From: Jens Axboe @ 2017-04-28 16:54 UTC (permalink / raw)
  To: linux-block; +Cc: ming.lei, hch

OK, I think we're getting there now. I dropped the RQF_RESERVED
and the tag helper, since mtip32xx can just call
blk_rq_is_passthrough() and know it's an internal request.

We can do another cleanup series of mtip32xx making the
internal requests use the normal blk end_io infrastructure,
and use the provider helpers for mapping data. I think
that should be done separately as a cleanup, keeping this series
as a straight forward conversion.

I've tested this on the following card:

[   56.394162] mtip32xx 0000:81:00.0: Model: P320h-MTFDGAR350SAH

and it works fine for me.

-- 
Jens Axboe

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2017-04-28 16:54 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-27 22:51 [PATCH 0/6] Fixup mtip32xx for scheduling Jens Axboe
2017-04-27 22:51 ` [PATCH 1/6] mtip32xx: get rid of 'atomic' argument to mtip_exec_internal_command() Jens Axboe
2017-04-27 23:19   ` Bart Van Assche
2017-04-27 22:51 ` [PATCH 2/6] mtip32xx: kill atomic argument to mtip_quiesce_io() Jens Axboe
2017-04-27 23:20   ` Bart Van Assche
2017-04-27 22:51 ` [PATCH 3/6] mtip32xx: abstract out "are any commands active" helper Jens Axboe
2017-04-27 23:21   ` Bart Van Assche
2017-04-27 22:51 ` [PATCH 4/6] blk-mq: don't bypass scheduler for reserved requests Jens Axboe
2017-04-28  4:04   ` Ming Lei
2017-04-28  4:13     ` Jens Axboe
2017-04-27 22:51 ` [PATCH 5/6] mtip32xx: convert internal command issue to block IO path Jens Axboe
2017-04-27 23:29   ` Bart Van Assche
2017-04-27 23:35     ` Jens Axboe
2017-04-27 22:51 ` [PATCH 6/6] Revert "mtip32xx: pass BLK_MQ_F_NO_SCHED" Jens Axboe
2017-04-28  4:06   ` Ming Lei
2017-04-27 23:12 ` [PATCH 0/6] Fixup mtip32xx for scheduling Jens Axboe
  -- strict thread matches above, loose matches on Subject: below --
2017-04-28 14:01 [PATCH v2 " Jens Axboe
2017-04-28 14:01 ` [PATCH 3/6] mtip32xx: abstract out "are any commands active" helper Jens Axboe
2017-04-28 14:31 [PATCH v2a 0/6]: Fixup mtip32xx for scheduling Jens Axboe
2017-04-28 14:31 ` [PATCH 3/6] mtip32xx: abstract out "are any commands active" helper Jens Axboe
2017-04-28 14:39   ` Christoph Hellwig
2017-04-28 16:54 [PATCH v4 0/6] Fixup mtip32xx for scheduling Jens Axboe
2017-04-28 16:54 ` [PATCH 3/6] mtip32xx: abstract out "are any commands active" helper Jens Axboe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).