File tree Expand file tree Collapse file tree 2 files changed +13
-6
lines changed
drivers/infiniband/hw/irdma Expand file tree Collapse file tree 2 files changed +13
-6
lines changed Original file line number Diff line number Diff line change @@ -590,11 +590,14 @@ static int irdma_wait_event(struct irdma_pci_f *rf,
590
590
cqp_error = cqp_request -> compl_info .error ;
591
591
if (cqp_error ) {
592
592
err_code = - EIO ;
593
- if (cqp_request -> compl_info .maj_err_code == 0xFFFF &&
594
- cqp_request -> compl_info .min_err_code == 0x8029 ) {
595
- if (!rf -> reset ) {
596
- rf -> reset = true;
597
- rf -> gen_ops .request_reset (rf );
593
+ if (cqp_request -> compl_info .maj_err_code == 0xFFFF ) {
594
+ if (cqp_request -> compl_info .min_err_code == 0x8002 )
595
+ err_code = - EBUSY ;
596
+ else if (cqp_request -> compl_info .min_err_code == 0x8029 ) {
597
+ if (!rf -> reset ) {
598
+ rf -> reset = true;
599
+ rf -> gen_ops .request_reset (rf );
600
+ }
598
601
}
599
602
}
600
603
}
Original file line number Diff line number Diff line change @@ -3009,6 +3009,7 @@ static int irdma_dereg_mr(struct ib_mr *ib_mr, struct ib_udata *udata)
3009
3009
struct irdma_pble_alloc * palloc = & iwpbl -> pble_alloc ;
3010
3010
struct irdma_cqp_request * cqp_request ;
3011
3011
struct cqp_cmds_info * cqp_info ;
3012
+ int status ;
3012
3013
3013
3014
if (iwmr -> type != IRDMA_MEMREG_TYPE_MEM ) {
3014
3015
if (iwmr -> region ) {
@@ -3039,8 +3040,11 @@ static int irdma_dereg_mr(struct ib_mr *ib_mr, struct ib_udata *udata)
3039
3040
cqp_info -> post_sq = 1 ;
3040
3041
cqp_info -> in .u .dealloc_stag .dev = & iwdev -> rf -> sc_dev ;
3041
3042
cqp_info -> in .u .dealloc_stag .scratch = (uintptr_t )cqp_request ;
3042
- irdma_handle_cqp_op (iwdev -> rf , cqp_request );
3043
+ status = irdma_handle_cqp_op (iwdev -> rf , cqp_request );
3043
3044
irdma_put_cqp_request (& iwdev -> rf -> cqp , cqp_request );
3045
+ if (status )
3046
+ return status ;
3047
+
3044
3048
irdma_free_stag (iwdev , iwmr -> stag );
3045
3049
done :
3046
3050
if (iwpbl -> pbl_allocated )
You can’t perform that action at this time.
0 commit comments