Messages in this thread | | | From | Paolo Bonzini <> | Subject | [RFC PATCH 0/3] target: try satisfying memory requests with higher-order allocations | Date | Wed, 5 Sep 2012 17:13:42 +0200 |
| |
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(-)
| |