diff options
author | Sebastian Ott <sebott@linux.vnet.ibm.com> | 2014-12-05 16:43:58 +0100 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2014-12-08 09:42:46 +0100 |
commit | bbc610a96524fbfa4ed38c4b1fc6348a1169f358 (patch) | |
tree | dddbd956b535c2672bfc19f4679dcffac095a77d /drivers/s390/block/scm_blk.h | |
parent | de88d0d28fe932637eb5b7ebf9e638256cf07979 (diff) |
s390/scm_block: handle multiple requests in one HW request
Handle up to 8 block layer requests per HW request. These requests
can be processed in parallel on the device leading to better
throughput (and less interrupts). The overhead for additional
requests is small since we don't blindly allocate new aidaws but
try to use what's left of the previous one.
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/block/scm_blk.h')
-rw-r--r-- | drivers/s390/block/scm_blk.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/s390/block/scm_blk.h b/drivers/s390/block/scm_blk.h index 6334e1609208..3dae0a3570ce 100644 --- a/drivers/s390/block/scm_blk.h +++ b/drivers/s390/block/scm_blk.h @@ -11,6 +11,7 @@ #include <asm/eadm.h> #define SCM_NR_PARTS 8 +#define SCM_RQ_PER_IO 8 #define SCM_QUEUE_DELAY 5 struct scm_blk_dev { @@ -31,7 +32,7 @@ struct scm_blk_dev { struct scm_request { struct scm_blk_dev *bdev; struct aidaw *next_aidaw; - struct request *request; + struct request *request[SCM_RQ_PER_IO]; struct aob *aob; struct list_head list; u8 retries; |