mirror of https://gitee.com/openkylin/linux.git
IB/mthca: Fill in vendor_err field in completion with error
Fill vendor_err field in completion with error. Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
parent
5ceb74557c
commit
0f8e8f9607
|
@ -128,12 +128,12 @@ struct mthca_err_cqe {
|
|||
__be32 my_qpn;
|
||||
u32 reserved1[3];
|
||||
u8 syndrome;
|
||||
u8 reserved2;
|
||||
u8 vendor_err;
|
||||
__be16 db_cnt;
|
||||
u32 reserved3;
|
||||
u32 reserved2;
|
||||
__be32 wqe;
|
||||
u8 opcode;
|
||||
u8 reserved4[2];
|
||||
u8 reserved3[2];
|
||||
u8 owner;
|
||||
};
|
||||
|
||||
|
@ -342,8 +342,8 @@ static int handle_error_cqe(struct mthca_dev *dev, struct mthca_cq *cq,
|
|||
}
|
||||
|
||||
/*
|
||||
* For completions in error, only work request ID, status (and
|
||||
* freed resource count for RD) have to be set.
|
||||
* For completions in error, only work request ID, status, vendor error
|
||||
* (and freed resource count for RD) have to be set.
|
||||
*/
|
||||
switch (cqe->syndrome) {
|
||||
case SYNDROME_LOCAL_LENGTH_ERR:
|
||||
|
@ -405,6 +405,8 @@ static int handle_error_cqe(struct mthca_dev *dev, struct mthca_cq *cq,
|
|||
break;
|
||||
}
|
||||
|
||||
entry->vendor_err = cqe->vendor_err;
|
||||
|
||||
/*
|
||||
* Mem-free HCAs always generate one CQE per WQE, even in the
|
||||
* error case, so we don't have to check the doorbell count, etc.
|
||||
|
|
Loading…
Reference in New Issue