diff options
| author | Michael Brown | 2010-09-18 23:37:54 +0200 |
|---|---|---|
| committer | Michael Brown | 2010-09-19 00:00:57 +0200 |
| commit | 8cd2b170b6e1371b80de91496fa28dd91260b0e5 (patch) | |
| tree | 05a0027373918e4fa1ffcbb27e64f19e8383726f /src/drivers/infiniband/arbel.h | |
| parent | [fc] Maintain port, peer and ULP lists in order of creation (diff) | |
| download | ipxe-8cd2b170b6e1371b80de91496fa28dd91260b0e5.tar.gz ipxe-8cd2b170b6e1371b80de91496fa28dd91260b0e5.tar.xz ipxe-8cd2b170b6e1371b80de91496fa28dd91260b0e5.zip | |
[arbel] Minimise the number of VPM mapping operations
Mapping a single page at a time causes a several-second delay at
device initialisation time. Reduce this by mapping multiple pages at
a time, using the largest block sizes possible given the alignment
constraints.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/drivers/infiniband/arbel.h')
| -rw-r--r-- | src/drivers/infiniband/arbel.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/drivers/infiniband/arbel.h b/src/drivers/infiniband/arbel.h index 45bd3720f..534115729 100644 --- a/src/drivers/infiniband/arbel.h +++ b/src/drivers/infiniband/arbel.h @@ -468,11 +468,12 @@ struct arbel { size_t icm_aux_len; /** ICM area */ userptr_t icm; - - /** Event queue */ - struct arbel_event_queue eq; + /** Offset within ICM of doorbell records */ + size_t db_rec_offset; /** Doorbell records */ union arbelprm_doorbell_record *db_rec; + /** Event queue */ + struct arbel_event_queue eq; /** Unrestricted LKey * * Used to get unrestricted memory access. |
