err = mthca_init_cq(to_mdev(ibdev), nent, cq); if (err) { kfree(cq); cq = ERR_PTR(err); 
err = mthca_init_cq(to_mdev(ibdev), nent, context ? to_mucontext(context) : NULL, context ? ucmd.pdn : to_mdev(ibdev)->driver_pd.pd_num, cq); if (err) goto err_free;  if (context && ib_copy_to_udata(udata, &cq->cqn, sizeof (__u32))) { mthca_free_cq(to_mdev(ibdev), cq); goto err_free; 
static struct ib_cq *mthca_create_cq(struct ib_device *ibdev, int entries,				     struct ib_ucontext *context,				     struct ib_udata *udata){	struct mthca_cq *cq;	int nent;	int err;	cq = kmalloc(sizeof *cq, GFP_KERNEL);	if (!cq)		return ERR_PTR(-ENOMEM);	for (nent = 1; nent <= entries; nent <<= 1)		; /* nothing */	err = mthca_init_cq(to_mdev(ibdev), nent, cq);	if (err) {		kfree(cq);		cq = ERR_PTR(err);	}	return &cq->ibcq;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/74c2174e7be52f9d2d210511bf3b490f4b41574c/mthca_provider.c/clean/drivers/infiniband/hw/mthca/mthca_provider.c