summaryrefslogtreecommitdiff
path: root/drivers/staging/rdma/amso1100
diff options
context:
space:
mode:
authorAndré Fabian Silva Delgado <emulatorman@parabola.nu>2016-01-20 14:01:31 -0300
committerAndré Fabian Silva Delgado <emulatorman@parabola.nu>2016-01-20 14:01:31 -0300
commitb4b7ff4b08e691656c9d77c758fc355833128ac0 (patch)
tree82fcb00e6b918026dc9f2d1f05ed8eee83874cc0 /drivers/staging/rdma/amso1100
parent35acfa0fc609f2a2cd95cef4a6a9c3a5c38f1778 (diff)
Linux-libre 4.4-gnupck-4.4-gnu
Diffstat (limited to 'drivers/staging/rdma/amso1100')
-rw-r--r--drivers/staging/rdma/amso1100/c2.c6
-rw-r--r--drivers/staging/rdma/amso1100/c2_ae.c6
-rw-r--r--drivers/staging/rdma/amso1100/c2_alloc.c2
-rw-r--r--drivers/staging/rdma/amso1100/c2_cm.c3
-rw-r--r--drivers/staging/rdma/amso1100/c2_cq.c12
-rw-r--r--drivers/staging/rdma/amso1100/c2_intr.c2
-rw-r--r--drivers/staging/rdma/amso1100/c2_mm.c10
-rw-r--r--drivers/staging/rdma/amso1100/c2_mq.c1
-rw-r--r--drivers/staging/rdma/amso1100/c2_provider.c10
-rw-r--r--drivers/staging/rdma/amso1100/c2_qp.c28
-rw-r--r--drivers/staging/rdma/amso1100/c2_rnic.c28
11 files changed, 53 insertions, 55 deletions
diff --git a/drivers/staging/rdma/amso1100/c2.c b/drivers/staging/rdma/amso1100/c2.c
index 766a71cce..35ac536b2 100644
--- a/drivers/staging/rdma/amso1100/c2.c
+++ b/drivers/staging/rdma/amso1100/c2.c
@@ -548,7 +548,7 @@ static irqreturn_t c2_interrupt(int irq, void *dev_id)
{
unsigned int netisr0, dmaisr;
int handled = 0;
- struct c2_dev *c2dev = (struct c2_dev *) dev_id;
+ struct c2_dev *c2dev = dev_id;
/* Process CCILNET interrupts */
netisr0 = readl(c2dev->regs + C2_NISR0);
@@ -675,11 +675,11 @@ static int c2_up(struct net_device *netdev)
return 0;
- bail1:
+bail1:
c2_rx_clean(c2_port);
kfree(c2_port->rx_ring.start);
- bail0:
+bail0:
pci_free_consistent(c2dev->pcidev, c2_port->mem_size, c2_port->mem,
c2_port->dma);
diff --git a/drivers/staging/rdma/amso1100/c2_ae.c b/drivers/staging/rdma/amso1100/c2_ae.c
index cedda2523..eb7a92b26 100644
--- a/drivers/staging/rdma/amso1100/c2_ae.c
+++ b/drivers/staging/rdma/amso1100/c2_ae.c
@@ -183,7 +183,7 @@ void c2_ae_event(struct c2_dev *c2dev, u32 mq_index)
switch (resource_indicator) {
case C2_RES_IND_QP:{
- struct c2_qp *qp = (struct c2_qp *)resource_user_context;
+ struct c2_qp *qp = resource_user_context;
struct iw_cm_id *cm_id = qp->cm_id;
struct c2wr_ae_active_connect_results *res;
@@ -273,7 +273,7 @@ void c2_ae_event(struct c2_dev *c2dev, u32 mq_index)
struct c2wr_ae_connection_request *req =
&wr->ae.ae_connection_request;
struct iw_cm_id *cm_id =
- (struct iw_cm_id *)resource_user_context;
+ resource_user_context;
pr_debug("C2_RES_IND_EP event_id=%d\n", event_id);
if (event_id != CCAE_CONNECTION_REQUEST) {
@@ -303,7 +303,7 @@ void c2_ae_event(struct c2_dev *c2dev, u32 mq_index)
case C2_RES_IND_CQ:{
struct c2_cq *cq =
- (struct c2_cq *) resource_user_context;
+ resource_user_context;
pr_debug("IB_EVENT_CQ_ERR\n");
ib_event.device = &c2dev->ibdev;
diff --git a/drivers/staging/rdma/amso1100/c2_alloc.c b/drivers/staging/rdma/amso1100/c2_alloc.c
index 78d247ec6..039872dfa 100644
--- a/drivers/staging/rdma/amso1100/c2_alloc.c
+++ b/drivers/staging/rdma/amso1100/c2_alloc.c
@@ -131,7 +131,7 @@ void c2_free_mqsp(__be16 *mqsp)
*mqsp = (__force __be16) head->head;
/* Compute the shared_ptr index */
- idx = ((unsigned long) mqsp & ~PAGE_MASK) >> 1;
+ idx = (offset_in_page(mqsp)) >> 1;
idx -= (unsigned long) &(((struct sp_chunk *) 0)->shared_ptr[0]) >> 1;
/* Point this index at the head */
diff --git a/drivers/staging/rdma/amso1100/c2_cm.c b/drivers/staging/rdma/amso1100/c2_cm.c
index 23bfa94fb..f8dbdb9e0 100644
--- a/drivers/staging/rdma/amso1100/c2_cm.c
+++ b/drivers/staging/rdma/amso1100/c2_cm.c
@@ -278,10 +278,7 @@ int c2_llp_service_destroy(struct iw_cm_id *cm_id)
err = -ENOMEM;
goto bail0;
}
- if ((err = c2_errno(reply)) != 0)
- goto bail1;
- bail1:
vq_repbuf_free(c2dev, reply);
bail0:
vq_req_free(c2dev, vq_req);
diff --git a/drivers/staging/rdma/amso1100/c2_cq.c b/drivers/staging/rdma/amso1100/c2_cq.c
index 1b63185b4..3ef881f2d 100644
--- a/drivers/staging/rdma/amso1100/c2_cq.c
+++ b/drivers/staging/rdma/amso1100/c2_cq.c
@@ -374,13 +374,13 @@ int c2_init_cq(struct c2_dev *c2dev, int entries,
return 0;
- bail3:
+bail3:
vq_repbuf_free(c2dev, reply);
- bail2:
+bail2:
vq_req_free(c2dev, vq_req);
- bail1:
+bail1:
c2_free_cq_buf(c2dev, &cq->mq);
- bail0:
+bail0:
c2_free_mqsp(cq->mq.shared);
return err;
@@ -429,9 +429,9 @@ void c2_free_cq(struct c2_dev *c2dev, struct c2_cq *cq)
reply = (struct c2wr_cq_destroy_rep *) (unsigned long) (vq_req->reply_msg);
if (reply)
vq_repbuf_free(c2dev, reply);
- bail1:
+bail1:
vq_req_free(c2dev, vq_req);
- bail0:
+bail0:
if (cq->is_kernel) {
c2_free_cq_buf(c2dev, &cq->mq);
}
diff --git a/drivers/staging/rdma/amso1100/c2_intr.c b/drivers/staging/rdma/amso1100/c2_intr.c
index 3a17d9b36..74b32a971 100644
--- a/drivers/staging/rdma/amso1100/c2_intr.c
+++ b/drivers/staging/rdma/amso1100/c2_intr.c
@@ -122,7 +122,7 @@ static void handle_vq(struct c2_dev *c2dev, u32 mq_index)
struct iw_cm_event cm_event;
int err;
- reply_vq = (struct c2_mq *) c2dev->qptr_array[mq_index];
+ reply_vq = c2dev->qptr_array[mq_index];
/*
* get next msg from mq_index into adapter_msg.
diff --git a/drivers/staging/rdma/amso1100/c2_mm.c b/drivers/staging/rdma/amso1100/c2_mm.c
index 119c4f3d9..25081e291 100644
--- a/drivers/staging/rdma/amso1100/c2_mm.c
+++ b/drivers/staging/rdma/amso1100/c2_mm.c
@@ -164,7 +164,7 @@ send_pbl_messages(struct c2_dev *c2dev, __be32 stag_index,
err = c2_errno(reply);
vq_repbuf_free(c2dev, reply);
- bail0:
+bail0:
kfree(wr);
return err;
}
@@ -304,11 +304,11 @@ c2_nsmr_register_phys_kern(struct c2_dev *c2dev, u64 *addr_list,
return err;
- bail2:
+bail2:
vq_repbuf_free(c2dev, reply);
- bail1:
+bail1:
kfree(wr);
- bail0:
+bail0:
vq_req_free(c2dev, vq_req);
return err;
}
@@ -371,7 +371,7 @@ int c2_stag_dealloc(struct c2_dev *c2dev, u32 stag_index)
err = c2_errno(reply);
vq_repbuf_free(c2dev, reply);
- bail0:
+bail0:
vq_req_free(c2dev, vq_req);
return err;
}
diff --git a/drivers/staging/rdma/amso1100/c2_mq.c b/drivers/staging/rdma/amso1100/c2_mq.c
index 0cddc49be..7827fb8bd 100644
--- a/drivers/staging/rdma/amso1100/c2_mq.c
+++ b/drivers/staging/rdma/amso1100/c2_mq.c
@@ -155,6 +155,7 @@ void c2_mq_req_init(struct c2_mq *q, u32 index, u32 q_size, u32 msg_size,
q->hint_count = 0;
return;
}
+
void c2_mq_rep_init(struct c2_mq *q, u32 index, u32 q_size, u32 msg_size,
u8 *pool_start, u16 __iomem *peer, u32 type)
{
diff --git a/drivers/staging/rdma/amso1100/c2_provider.c b/drivers/staging/rdma/amso1100/c2_provider.c
index 25c3f0085..c707e4588 100644
--- a/drivers/staging/rdma/amso1100/c2_provider.c
+++ b/drivers/staging/rdma/amso1100/c2_provider.c
@@ -359,7 +359,7 @@ static struct ib_mr *c2_reg_phys_mr(struct ib_pd *ib_pd,
for (i = 0; i < num_phys_buf; i++) {
- if (buffer_list[i].addr & ~PAGE_MASK) {
+ if (offset_in_page(buffer_list[i].addr)) {
pr_debug("Unaligned Memory Buffer: 0x%x\n",
(unsigned int) buffer_list[i].addr);
return ERR_PTR(-EINVAL);
@@ -372,7 +372,7 @@ static struct ib_mr *c2_reg_phys_mr(struct ib_pd *ib_pd,
total_len += buffer_list[i].size;
pbl_depth += ALIGN(buffer_list[i].size,
- (1 << page_shift)) >> page_shift;
+ BIT(page_shift)) >> page_shift;
}
page_list = vmalloc(sizeof(u64) * pbl_depth);
@@ -387,7 +387,7 @@ static struct ib_mr *c2_reg_phys_mr(struct ib_pd *ib_pd,
int naddrs;
naddrs = ALIGN(buffer_list[i].size,
- (1 << page_shift)) >> page_shift;
+ BIT(page_shift)) >> page_shift;
for (k = 0; k < naddrs; k++)
page_list[j++] = (buffer_list[i].addr +
(k << page_shift));
@@ -408,7 +408,7 @@ static struct ib_mr *c2_reg_phys_mr(struct ib_pd *ib_pd,
(unsigned long long) page_list[0],
(unsigned long long) page_list[pbl_depth-1]);
err = c2_nsmr_register_phys_kern(to_c2dev(ib_pd->device), page_list,
- (1 << page_shift), pbl_depth,
+ BIT(page_shift), pbl_depth,
total_len, 0, iova_start,
c2_convert_access(acc), mr);
vfree(page_list);
@@ -462,7 +462,7 @@ static struct ib_mr *c2_reg_user_mr(struct ib_pd *pd, u64 start, u64 length,
shift = ffs(c2mr->umem->page_size) - 1;
n = c2mr->umem->nmap;
- pages = kmalloc(n * sizeof(u64), GFP_KERNEL);
+ pages = kmalloc_array(n, sizeof(u64), GFP_KERNEL);
if (!pages) {
err = -ENOMEM;
goto err;
diff --git a/drivers/staging/rdma/amso1100/c2_qp.c b/drivers/staging/rdma/amso1100/c2_qp.c
index 86708dee5..ca364dbe3 100644
--- a/drivers/staging/rdma/amso1100/c2_qp.c
+++ b/drivers/staging/rdma/amso1100/c2_qp.c
@@ -240,7 +240,7 @@ int c2_qp_modify(struct c2_dev *c2dev, struct c2_qp *qp,
spin_unlock_irqrestore(&qp->lock, flags);
vq_repbuf_free(c2dev, reply);
- bail0:
+bail0:
vq_req_free(c2dev, vq_req);
pr_debug("%s:%d qp=%p, cur_state=%s\n",
@@ -294,7 +294,7 @@ int c2_qp_set_read_limits(struct c2_dev *c2dev, struct c2_qp *qp,
err = c2_errno(reply);
vq_repbuf_free(c2dev, reply);
- bail0:
+bail0:
vq_req_free(c2dev, vq_req);
return err;
}
@@ -373,7 +373,7 @@ static int destroy_qp(struct c2_dev *c2dev, struct c2_qp *qp)
spin_unlock_irqrestore(&qp->lock, flags);
vq_repbuf_free(c2dev, reply);
- bail0:
+bail0:
vq_req_free(c2dev, vq_req);
return err;
}
@@ -554,19 +554,19 @@ int c2_alloc_qp(struct c2_dev *c2dev,
return 0;
- bail6:
+bail6:
iounmap(qp->sq_mq.peer);
- bail5:
+bail5:
destroy_qp(c2dev, qp);
- bail4:
+bail4:
vq_repbuf_free(c2dev, reply);
- bail3:
+bail3:
vq_req_free(c2dev, vq_req);
- bail2:
+bail2:
c2_free_mqsp(qp->rq_mq.shared);
- bail1:
+bail1:
c2_free_mqsp(qp->sq_mq.shared);
- bail0:
+bail0:
c2_free_qpn(c2dev, qp->qpn);
return err;
}
@@ -860,9 +860,9 @@ int c2_post_send(struct ib_qp *ibqp, struct ib_send_wr *ib_wr,
flags |= SQ_READ_FENCE;
}
wr.sqwr.rdma_write.remote_stag =
- cpu_to_be32(ib_wr->wr.rdma.rkey);
+ cpu_to_be32(rdma_wr(ib_wr)->rkey);
wr.sqwr.rdma_write.remote_to =
- cpu_to_be64(ib_wr->wr.rdma.remote_addr);
+ cpu_to_be64(rdma_wr(ib_wr)->remote_addr);
err = move_sgl((struct c2_data_addr *)
& (wr.sqwr.rdma_write.data),
ib_wr->sg_list,
@@ -889,9 +889,9 @@ int c2_post_send(struct ib_qp *ibqp, struct ib_send_wr *ib_wr,
wr.sqwr.rdma_read.local_to =
cpu_to_be64(ib_wr->sg_list->addr);
wr.sqwr.rdma_read.remote_stag =
- cpu_to_be32(ib_wr->wr.rdma.rkey);
+ cpu_to_be32(rdma_wr(ib_wr)->rkey);
wr.sqwr.rdma_read.remote_to =
- cpu_to_be64(ib_wr->wr.rdma.remote_addr);
+ cpu_to_be64(rdma_wr(ib_wr)->remote_addr);
wr.sqwr.rdma_read.length =
cpu_to_be32(ib_wr->sg_list->length);
break;
diff --git a/drivers/staging/rdma/amso1100/c2_rnic.c b/drivers/staging/rdma/amso1100/c2_rnic.c
index d2a6d9613..d3c0f7776 100644
--- a/drivers/staging/rdma/amso1100/c2_rnic.c
+++ b/drivers/staging/rdma/amso1100/c2_rnic.c
@@ -261,9 +261,9 @@ int c2_add_addr(struct c2_dev *c2dev, __be32 inaddr, __be32 inmask)
err = c2_errno(reply);
vq_repbuf_free(c2dev, reply);
- bail1:
+bail1:
kfree(wr);
- bail0:
+bail0:
vq_req_free(c2dev, vq_req);
return err;
}
@@ -323,9 +323,9 @@ int c2_del_addr(struct c2_dev *c2dev, __be32 inaddr, __be32 inmask)
err = c2_errno(reply);
vq_repbuf_free(c2dev, reply);
- bail1:
+bail1:
kfree(wr);
- bail0:
+bail0:
vq_req_free(c2dev, vq_req);
return err;
}
@@ -378,9 +378,9 @@ static int c2_rnic_open(struct c2_dev *c2dev)
c2dev->adapter_handle = reply->rnic_handle;
- bail1:
+bail1:
vq_repbuf_free(c2dev, reply);
- bail0:
+bail0:
vq_req_free(c2dev, vq_req);
return err;
}
@@ -430,9 +430,9 @@ static int c2_rnic_close(struct c2_dev *c2dev)
c2dev->adapter_handle = 0;
- bail1:
+bail1:
vq_repbuf_free(c2dev, reply);
- bail0:
+bail0:
vq_req_free(c2dev, vq_req);
return err;
}
@@ -589,21 +589,21 @@ int c2_rnic_init(struct c2_dev *c2dev)
c2_init_qp_table(c2dev);
return 0;
- bail5:
+bail5:
c2_rnic_close(c2dev);
- bail4:
+bail4:
vq_term(c2dev);
- bail3:
+bail3:
dma_free_coherent(&c2dev->pcidev->dev,
c2dev->aeq.q_size * c2dev->aeq.msg_size,
q2_pages, dma_unmap_addr(&c2dev->aeq, mapping));
- bail2:
+bail2:
dma_free_coherent(&c2dev->pcidev->dev,
c2dev->rep_vq.q_size * c2dev->rep_vq.msg_size,
q1_pages, dma_unmap_addr(&c2dev->rep_vq, mapping));
- bail1:
+bail1:
c2_free_mqsp_pool(c2dev, c2dev->kern_mqsp_pool);
- bail0:
+bail0:
vfree(c2dev->qptr_array);
return err;