IB/core: Add support for modify CQ
Add support for modifying CQ parameters for controlling event generation moderation. Signed-off-by: Eli Cohen <eli@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
parent
82c24c18af
commit
2dd5716227
2 changed files with 18 additions and 0 deletions
|
@ -630,6 +630,13 @@ struct ib_cq *ib_create_cq(struct ib_device *device,
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(ib_create_cq);
|
EXPORT_SYMBOL(ib_create_cq);
|
||||||
|
|
||||||
|
int ib_modify_cq(struct ib_cq *cq, u16 cq_count, u16 cq_period)
|
||||||
|
{
|
||||||
|
return cq->device->modify_cq ?
|
||||||
|
cq->device->modify_cq(cq, cq_count, cq_period) : -ENOSYS;
|
||||||
|
}
|
||||||
|
EXPORT_SYMBOL(ib_modify_cq);
|
||||||
|
|
||||||
int ib_destroy_cq(struct ib_cq *cq)
|
int ib_destroy_cq(struct ib_cq *cq)
|
||||||
{
|
{
|
||||||
if (atomic_read(&cq->usecnt))
|
if (atomic_read(&cq->usecnt))
|
||||||
|
|
|
@ -987,6 +987,8 @@ struct ib_device {
|
||||||
int comp_vector,
|
int comp_vector,
|
||||||
struct ib_ucontext *context,
|
struct ib_ucontext *context,
|
||||||
struct ib_udata *udata);
|
struct ib_udata *udata);
|
||||||
|
int (*modify_cq)(struct ib_cq *cq, u16 cq_count,
|
||||||
|
u16 cq_period);
|
||||||
int (*destroy_cq)(struct ib_cq *cq);
|
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,
|
||||||
struct ib_udata *udata);
|
struct ib_udata *udata);
|
||||||
|
@ -1391,6 +1393,15 @@ struct ib_cq *ib_create_cq(struct ib_device *device,
|
||||||
*/
|
*/
|
||||||
int ib_resize_cq(struct ib_cq *cq, int cqe);
|
int ib_resize_cq(struct ib_cq *cq, int cqe);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ib_modify_cq - Modifies moderation params of the CQ
|
||||||
|
* @cq: The CQ to modify.
|
||||||
|
* @cq_count: number of CQEs that will trigger an event
|
||||||
|
* @cq_period: max period of time in usec before triggering an event
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
int ib_modify_cq(struct ib_cq *cq, u16 cq_count, u16 cq_period);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ib_destroy_cq - Destroys the specified CQ.
|
* ib_destroy_cq - Destroys the specified CQ.
|
||||||
* @cq: The CQ to destroy.
|
* @cq: The CQ to destroy.
|
||||||
|
|
Loading…
Reference in a new issue