Hi all, while testing PSCSI I noticed that even requests for a smallish amount of data (approximately 700 KB) failed due to an excessive number of segments in the request. In fact, using alloc_page resulted in a completely fragmented request, with no merging of consecutive pages at all.
This patch series fixes this problem by using higher-order allocations to build the data scatterlist. The problem is that iscsi assumes that the scatterlist consists of single pages, which is not true anymore. So patch 2 has to introduce some relatively complicated changes to iscsi_map_iovec and iscsi_unmap_iovec. While doing this, I noticed something strange in iscsit_do_crypto_hash_sg. Patch 1 adds a warning about it. The approach may be completely wrong and it needs more testing anyway. Please review! Paolo Paolo Bonzini (3): tcm_iscsi: warn on incorrect precondition for iscsit_do_crypto_hash_sg tcm_iscsi: support multiple sizes in the scatterlist target: try satisfying memory requests with contiguous blocks drivers/target/iscsi/iscsi_target.c | 106 +++++++++++++++++++++++++----- drivers/target/iscsi/iscsi_target_core.h | 2 +- drivers/target/target_core_transport.c | 58 ++++++++++++++--- 3 files changed, 138 insertions(+), 28 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/