diff options
| -rw-r--r-- | drivers/infiniband/hw/mthca/mthca_cq.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/infiniband/hw/mthca/mthca_cq.c b/drivers/infiniband/hw/mthca/mthca_cq.c index fcef8dc2c121..96f1a86bf049 100644 --- a/drivers/infiniband/hw/mthca/mthca_cq.c +++ b/drivers/infiniband/hw/mthca/mthca_cq.c | |||
| @@ -128,12 +128,12 @@ struct mthca_err_cqe { | |||
| 128 | __be32 my_qpn; | 128 | __be32 my_qpn; |
| 129 | u32 reserved1[3]; | 129 | u32 reserved1[3]; |
| 130 | u8 syndrome; | 130 | u8 syndrome; |
| 131 | u8 reserved2; | 131 | u8 vendor_err; |
| 132 | __be16 db_cnt; | 132 | __be16 db_cnt; |
| 133 | u32 reserved3; | 133 | u32 reserved2; |
| 134 | __be32 wqe; | 134 | __be32 wqe; |
| 135 | u8 opcode; | 135 | u8 opcode; |
| 136 | u8 reserved4[2]; | 136 | u8 reserved3[2]; |
| 137 | u8 owner; | 137 | u8 owner; |
| 138 | }; | 138 | }; |
| 139 | 139 | ||
| @@ -342,8 +342,8 @@ static int handle_error_cqe(struct mthca_dev *dev, struct mthca_cq *cq, | |||
| 342 | } | 342 | } |
| 343 | 343 | ||
| 344 | /* | 344 | /* |
| 345 | * For completions in error, only work request ID, status (and | 345 | * For completions in error, only work request ID, status, vendor error |
| 346 | * freed resource count for RD) have to be set. | 346 | * (and freed resource count for RD) have to be set. |
| 347 | */ | 347 | */ |
| 348 | switch (cqe->syndrome) { | 348 | switch (cqe->syndrome) { |
| 349 | case SYNDROME_LOCAL_LENGTH_ERR: | 349 | case SYNDROME_LOCAL_LENGTH_ERR: |
| @@ -405,6 +405,8 @@ static int handle_error_cqe(struct mthca_dev *dev, struct mthca_cq *cq, | |||
| 405 | break; | 405 | break; |
| 406 | } | 406 | } |
| 407 | 407 | ||
| 408 | entry->vendor_err = cqe->vendor_err; | ||
| 409 | |||
| 408 | /* | 410 | /* |
| 409 | * Mem-free HCAs always generate one CQE per WQE, even in the | 411 | * Mem-free HCAs always generate one CQE per WQE, even in the |
| 410 | * error case, so we don't have to check the doorbell count, etc. | 412 | * error case, so we don't have to check the doorbell count, etc. |
