mirror of
https://github.com/xcat2/xNBA.git
synced 2024-11-26 03:09:12 +00:00
[arbel] Map all event types to our event queue
Only port state change events are currently mapped to our event queue, since those are the only events we are prepared to handle. This ignores a potentially useful source of diagnostic information in the case of unexpected failures. Fix by mapping all events to the event queue; a build with debugging enabled will therefore at least dump the raw content of the unexpected events. Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
parent
e4ed060983
commit
46f2580049
@ -607,7 +607,7 @@ static int arbel_create_cq ( struct ib_device *ibdev,
|
||||
MLX_FILL_2 ( &cqctx, 3,
|
||||
usr_page, arbel->limits.reserved_uars,
|
||||
log_cq_size, fls ( cq->num_cqes - 1 ) );
|
||||
MLX_FILL_1 ( &cqctx, 5, c_eqn, ARBEL_NO_EQ );
|
||||
MLX_FILL_1 ( &cqctx, 5, c_eqn, arbel->eq.eqn );
|
||||
MLX_FILL_1 ( &cqctx, 6, pd, ARBEL_GLOBAL_PD );
|
||||
MLX_FILL_1 ( &cqctx, 7, l_key, arbel->reserved_lkey );
|
||||
MLX_FILL_1 ( &cqctx, 12, cqn, cq->cqn );
|
||||
@ -1350,8 +1350,7 @@ static int arbel_create_eq ( struct arbel *arbel ) {
|
||||
}
|
||||
|
||||
/* Map events to this event queue */
|
||||
memset ( &mask, 0, sizeof ( mask ) );
|
||||
MLX_FILL_1 ( &mask, 1, port_state_change, 1 );
|
||||
memset ( &mask, 0xff, sizeof ( mask ) );
|
||||
if ( ( rc = arbel_cmd_map_eq ( arbel,
|
||||
( ARBEL_MAP_EQ | arbel_eq->eqn ),
|
||||
&mask ) ) != 0 ) {
|
||||
|
@ -119,9 +119,26 @@ struct arbelprm_event_mask_st {
|
||||
pseudo_bit_t reserved0[0x00020];
|
||||
/* -------------- */
|
||||
pseudo_bit_t completion[0x00001];
|
||||
pseudo_bit_t reserved1[0x0008];
|
||||
pseudo_bit_t path_migration_succeeded[0x00001];
|
||||
pseudo_bit_t communication_established[0x00001];
|
||||
pseudo_bit_t send_queue_drained[0x00001];
|
||||
pseudo_bit_t cq_error[0x00001];
|
||||
pseudo_bit_t wq_catastrophe[0x00001];
|
||||
pseudo_bit_t qpc_catastrophe[0x00001];
|
||||
pseudo_bit_t path_migration_failed[0x00001];
|
||||
pseudo_bit_t reserved1[0x00001];
|
||||
pseudo_bit_t port_state_change[0x00001];
|
||||
pseudo_bit_t reserved2[0x00016];
|
||||
pseudo_bit_t command_done[0x00001];
|
||||
pseudo_bit_t reserved2[0x00005];
|
||||
pseudo_bit_t wq_invalid_request[0x00001];
|
||||
pseudo_bit_t wq_access_violation[0x00001];
|
||||
pseudo_bit_t srq_catastrophe[0x00001];
|
||||
pseudo_bit_t srq_last_wqe[0x00001];
|
||||
pseudo_bit_t srq_rq_limit[0x00001];
|
||||
pseudo_bit_t gpio[0x00001];
|
||||
pseudo_bit_t clientreregister[0x00001];
|
||||
pseudo_bit_t path_migration_armed[0x00001];
|
||||
pseudo_bit_t reserved3[0x00008];
|
||||
} __attribute__ (( packed ));
|
||||
|
||||
struct arbelprm_eq_set_ci_st {
|
||||
|
Loading…
Reference in New Issue
Block a user