Skip to content

libosd: scatter gather commands and stuff for 2.6.37

Boaz Harrosh linux-scsi 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest4 patches 9 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/4libosd: Fix bug in attr_page handlingdrivers/scsi/osd/osd_initiator.c+10 -60 replies
2/4libosd: Free resources in reverse order of allocationdrivers/scsi/osd/osd_initiator.c+5 -40 replies
3/4libosd: Support for scatter gather write/read commandsdrivers/scsi/osd/osd_initiator.c include/scsi/osd_initiator.h include/scsi/osd_protocol.h +1 more+198 -60 replies
4/4libosd: write/read_sg_kern APIdrivers/scsi/osd/osd_initiator.c+71 -05 replies
4/4libosd: write/read_sg_kern APIdrivers/scsi/osd/osd_initiator.c include/scsi/osd_initiator.h+78 -04 replies

Reviews trailers per patch

None of the 5 patches has a Reviewed-by or Acked-by.

PatchJohn Chandy
1/4
2/4
3/4Original-coded-by
4/4
4/4

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [PATCHSET 0/4] libosd: scatter gather commands and stuff for 2.6.37

Hi James.

Please submit the following patches hopefully for the 2.6.37 merge window. 2 first patches are just bug fixes. The Last two patches enable the scatter gather OSD operations. These will only be used in filesystem code at the 2.6.38 Kernel but it could be nice to have them in before hand, so to avoid trees dependencies.

The original scatter gather work was done by John Chandy. I have reworked most of it, to better fit with the rest of the library, and the design decisions made there. I have also removed some fixture support that was originally available, for lack of any users.

I must say that John's original work had some merit and robustness to it but higher complexity and slower execution in the way the library is used today. If we want his system we should enable it for all segments not only the continuation segment. To get people up to speed. John's work enabled a bio-list for the continuation segment. But the rest of the code assumes a single allocation, single bio_map_kern for each segment. So to match the other segments handling I converted the continuation segment to a flat single-allocation as well.

The patches are:
[PATCH 1/4] libosd: Fix bug in attr_page handling [PATCH 2/4] libosd: Free resources in reverse order of allocation

These two should go in regardless

[PATCH 3/4] libosd: Support for scatter gather write/read commands

Please submit this patch as well I will need it in the RAID5 support for exofs. (Read without XOR blocks)

[PATCH 4/4] libosd: write/read_sg_kern API

This patch is currently only used in the out-of-tree osd_ktest.ko module. I can keep it in that tree if needed until Kernel users come up. Please advise.

Thanks
Boaz