__frwr_recovery_worker(struct work_struct *work)
 {
        struct rpcrdma_mw *r = container_of(work, struct rpcrdma_mw,
-                                           frmr.fr_work);
+                                           mw_work);
 
-       __frwr_reset_and_unmap(r->frmr.fr_xprt, r);
+       __frwr_reset_and_unmap(r->mw_xprt, r);
        return;
 }
 
 static void
 __frwr_queue_recovery(struct rpcrdma_mw *r)
 {
-       INIT_WORK(&r->frmr.fr_work, __frwr_recovery_worker);
-       queue_work(frwr_recovery_wq, &r->frmr.fr_work);
+       INIT_WORK(&r->mw_work, __frwr_recovery_worker);
+       queue_work(frwr_recovery_wq, &r->mw_work);
 }
 
 static int
                        return rc;
                }
 
+               r->mw_xprt = r_xprt;
                list_add(&r->mw_list, &buf->rb_mws);
                list_add(&r->mw_all, &buf->rb_all);
-               r->frmr.fr_xprt = r_xprt;
        }
 
        return 0;
 
        struct ib_cqe                   fr_cqe;
        enum rpcrdma_frmr_state         fr_state;
        struct completion               fr_linv_done;
-       struct work_struct              fr_work;
-       struct rpcrdma_xprt             *fr_xprt;
        union {
                struct ib_reg_wr        fr_regwr;
                struct ib_send_wr       fr_invwr;
                struct rpcrdma_fmr      fmr;
                struct rpcrdma_frmr     frmr;
        };
+       struct work_struct      mw_work;
+       struct rpcrdma_xprt     *mw_xprt;
        struct list_head        mw_list;
        struct list_head        mw_all;
 };