diff options
author | Roland Dreier <rolandd@cisco.com> | 2005-11-08 11:10:25 -0800 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2005-11-10 10:22:50 -0800 |
commit | 40de2e548c225e3ef859e3c60de9785e37e1b5b1 (patch) | |
tree | e7b9ffe6fca9246f29a0a3cdf6417770f5821cef | |
parent | 0b4ff2c0e624089ad87dc1604e239b7c3201c53f (diff) | |
download | linux-40de2e548c225e3ef859e3c60de9785e37e1b5b1.tar.gz linux-40de2e548c225e3ef859e3c60de9785e37e1b5b1.tar.bz2 linux-40de2e548c225e3ef859e3c60de9785e37e1b5b1.zip |
[IB] Have cq_resize() method take an int, not int*
Change the struct ib_device.resize_cq() method to take a plain integer
that holds the new CQ size, rather than a pointer to an integer that
it uses to return the new size. This makes the interface match the
exported ib_resize_cq() signature, and allows the low-level driver to
update the CQ size with proper locking if necessary.
No in-tree drivers are exporting this method yet.
Signed-off-by: Roland Dreier <rolandd@cisco.com>
-rw-r--r-- | drivers/infiniband/core/verbs.c | 12 | ||||
-rw-r--r-- | include/rdma/ib_verbs.h | 2 |
2 files changed, 3 insertions, 11 deletions
diff --git a/drivers/infiniband/core/verbs.c b/drivers/infiniband/core/verbs.c index 72d3ef786db5..4f51d797f84a 100644 --- a/drivers/infiniband/core/verbs.c +++ b/drivers/infiniband/core/verbs.c @@ -324,16 +324,8 @@ EXPORT_SYMBOL(ib_destroy_cq); int ib_resize_cq(struct ib_cq *cq, int cqe) { - int ret; - - if (!cq->device->resize_cq) - return -ENOSYS; - - ret = cq->device->resize_cq(cq, &cqe); - if (!ret) - cq->cqe = cqe; - - return ret; + return cq->device->resize_cq ? + cq->device->resize_cq(cq, cqe) : -ENOSYS; } EXPORT_SYMBOL(ib_resize_cq); diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h index f72d46d54e0a..a7f4c355a91f 100644 --- a/include/rdma/ib_verbs.h +++ b/include/rdma/ib_verbs.h @@ -881,7 +881,7 @@ struct ib_device { struct ib_ucontext *context, struct ib_udata *udata); int (*destroy_cq)(struct ib_cq *cq); - int (*resize_cq)(struct ib_cq *cq, int *cqe); + int (*resize_cq)(struct ib_cq *cq, int cqe); int (*poll_cq)(struct ib_cq *cq, int num_entries, struct ib_wc *wc); int (*peek_cq)(struct ib_cq *cq, int wc_cnt); |