Skip to content

Commit 92cd12c

Browse files
committed
Merge branch 'rds-ib-trivial-patches'
Zhu Yanjun says: ==================== rds: ib: trivial patches v2 -> v3 remove err from messages. ==================== Signed-off-by: David S. Miller <[email protected]>
2 parents 62a9fa0 + 569f41d commit 92cd12c

File tree

3 files changed

+26
-19
lines changed

3 files changed

+26
-19
lines changed

net/rds/ib_cm.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -677,9 +677,8 @@ int rds_ib_cm_handle_connect(struct rdma_cm_id *cm_id,
677677
event->param.conn.initiator_depth);
678678

679679
/* rdma_accept() calls rdma_reject() internally if it fails */
680-
err = rdma_accept(cm_id, &conn_param);
681-
if (err)
682-
rds_ib_conn_error(conn, "rdma_accept failed (%d)\n", err);
680+
if (rdma_accept(cm_id, &conn_param))
681+
rds_ib_conn_error(conn, "rdma_accept failed\n");
683682

684683
out:
685684
if (conn)

net/rds/ib_fmr.c

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -78,17 +78,15 @@ struct rds_ib_mr *rds_ib_alloc_fmr(struct rds_ib_device *rds_ibdev, int npages)
7878
return ibmr;
7979

8080
out_no_cigar:
81-
if (ibmr) {
82-
if (fmr->fmr)
83-
ib_dealloc_fmr(fmr->fmr);
84-
kfree(ibmr);
85-
}
81+
kfree(ibmr);
8682
atomic_dec(&pool->item_count);
83+
8784
return ERR_PTR(err);
8885
}
8986

90-
int rds_ib_map_fmr(struct rds_ib_device *rds_ibdev, struct rds_ib_mr *ibmr,
91-
struct scatterlist *sg, unsigned int nents)
87+
static int rds_ib_map_fmr(struct rds_ib_device *rds_ibdev,
88+
struct rds_ib_mr *ibmr, struct scatterlist *sg,
89+
unsigned int nents)
9290
{
9391
struct ib_device *dev = rds_ibdev->dev;
9492
struct rds_ib_fmr *fmr = &ibmr->u.fmr;
@@ -114,29 +112,39 @@ int rds_ib_map_fmr(struct rds_ib_device *rds_ibdev, struct rds_ib_mr *ibmr,
114112
u64 dma_addr = ib_sg_dma_address(dev, &scat[i]);
115113

116114
if (dma_addr & ~PAGE_MASK) {
117-
if (i > 0)
115+
if (i > 0) {
116+
ib_dma_unmap_sg(dev, sg, nents,
117+
DMA_BIDIRECTIONAL);
118118
return -EINVAL;
119-
else
119+
} else {
120120
++page_cnt;
121+
}
121122
}
122123
if ((dma_addr + dma_len) & ~PAGE_MASK) {
123-
if (i < sg_dma_len - 1)
124+
if (i < sg_dma_len - 1) {
125+
ib_dma_unmap_sg(dev, sg, nents,
126+
DMA_BIDIRECTIONAL);
124127
return -EINVAL;
125-
else
128+
} else {
126129
++page_cnt;
130+
}
127131
}
128132

129133
len += dma_len;
130134
}
131135

132136
page_cnt += len >> PAGE_SHIFT;
133-
if (page_cnt > ibmr->pool->fmr_attr.max_pages)
137+
if (page_cnt > ibmr->pool->fmr_attr.max_pages) {
138+
ib_dma_unmap_sg(dev, sg, nents, DMA_BIDIRECTIONAL);
134139
return -EINVAL;
140+
}
135141

136142
dma_pages = kmalloc_node(sizeof(u64) * page_cnt, GFP_ATOMIC,
137143
rdsibdev_to_node(rds_ibdev));
138-
if (!dma_pages)
144+
if (!dma_pages) {
145+
ib_dma_unmap_sg(dev, sg, nents, DMA_BIDIRECTIONAL);
139146
return -ENOMEM;
147+
}
140148

141149
page_cnt = 0;
142150
for (i = 0; i < sg_dma_len; ++i) {
@@ -149,8 +157,10 @@ int rds_ib_map_fmr(struct rds_ib_device *rds_ibdev, struct rds_ib_mr *ibmr,
149157
}
150158

151159
ret = ib_map_phys_fmr(fmr->fmr, dma_pages, page_cnt, io_addr);
152-
if (ret)
160+
if (ret) {
161+
ib_dma_unmap_sg(dev, sg, nents, DMA_BIDIRECTIONAL);
153162
goto out;
163+
}
154164

155165
/* Success - we successfully remapped the MR, so we can
156166
* safely tear down the old mapping.

net/rds/ib_mr.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,8 +125,6 @@ void rds_ib_mr_exit(void);
125125
void __rds_ib_teardown_mr(struct rds_ib_mr *);
126126
void rds_ib_teardown_mr(struct rds_ib_mr *);
127127
struct rds_ib_mr *rds_ib_alloc_fmr(struct rds_ib_device *, int);
128-
int rds_ib_map_fmr(struct rds_ib_device *, struct rds_ib_mr *,
129-
struct scatterlist *, unsigned int);
130128
struct rds_ib_mr *rds_ib_reuse_mr(struct rds_ib_mr_pool *);
131129
int rds_ib_flush_mr_pool(struct rds_ib_mr_pool *, int, struct rds_ib_mr **);
132130
struct rds_ib_mr *rds_ib_reg_fmr(struct rds_ib_device *, struct scatterlist *,

0 commit comments

Comments
 (0)