Hello, Jens, James, Jeff and Bartlomiej.
This is the fifth posting of blk ordered reimplementation. The
last posting was on 19th, Oct.
http://marc.theaimsgroup.com/?l=linux-kernel&m=112972609907761&w=2
The generic dispatch queue patchset which is required for this ordered
patchset has made it into the main tree.
http://marc.theaimsgroup.com/?l=linux-kernel&m=112972555921965&w=2
Changes from the previous post are...
* As core blk files have moved from drivers/block/ to block/, patches
are updated accordingly.
* In 04_blk_scsi-update-ordered, sd_prepare_flush() is updated to
initialize rq->cmd_len properly. This used to work like this
previously but something broke it. Note that the original flush
code is broken too. James, can you please verify this?
* libata has gone through some changes since last posting. libata
updates are rewritten. Jeff, please review #07 and #08.
Other than above three, nothing has changed. Jens, after reviewing,
can we push these into -mm?
Thanks. :-)
[ Start of patch descriptions ]
01_blk_add-uptodate-to-end_that_request_last.patch
: add @uptodate to end_that_request_last() and @error to rq_end_io_fn()
Add @uptodate argument to end_that_request_last() and @error
to rq_end_io_fn(). There's no generic way to pass error code
to request completion function, making generic error handling
of non-fs request difficult (rq->errors is driver-specific and
each driver uses it differently). This patch adds @uptodate
to end_that_request_last() and @error to rq_end_io_fn().
For fs requests, this doesn't really matter, so just using the
same uptodate argument used in the last call to
end_that_request_first() should suffice. IMHO, this can also
help the generic command-carrying request Jens is working on.
02_blk_implement-init_request_from_bio.patch
: separate out bio init part from __make_request
Separate out bio initialization part from __make_request. It
will be used by the following blk_ordered_reimpl.
03_blk_reimplement-ordered.patch
: reimplement handling of barrier request
Reimplement handling of barrier requests.
* Flexible handling to deal with various capabilities of
target devices.
* Retry support for falling back.
* Tagged queues which don't support ordered tag can do ordered.
04_blk_scsi-update-ordered.patch
: update SCSI to use new blk_ordered
All ordered request related stuff delegated to HLD. Midlayer
now doens't deal with ordered setting or prepare_flush
callback. sd.c updated to deal with blk_queue_ordered
setting. Currently, ordered tag isn't used as SCSI midlayer
cannot guarantee request ordering.
05_blk_scsi-add-fua-support.patch
: add FUA support to SCSI disk
Add FUA support to SCSI disk.
06_blk_libata-update-ordered.patch
: update libata to use new blk_ordered
Reflect changes in SCSI midlayer and updated to use new
ordered request implementation
07_blk_libata-add-fua-support.patch
: add FUA support to libata
Add FUA support to libata.
08_blk_ide-update-ordered.patch
: update IDE to use new blk_ordered
Update IDE to use new blk_ordered.
09_blk_ide-add-fua-support.patch
: add FUA support to IDE
Add FUA support to IDE
10_blk_add-barrier-doc.patch
: I/O barrier documentation
I/O barrier documentation
[ End of patch descriptions ]
--
tejun
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]