> diff --git a/drivers/infiniband/core/ucma.c b/drivers/infiniband/core/ucma.c > index 0274e9b704be..57e68491a2fd 100644 > --- a/drivers/infiniband/core/ucma.c > +++ b/drivers/infiniband/core/ucma.c > @@ -1045,7 +1045,7 @@ static void ucma_copy_conn_param(struct rdma_cm_id *id, > dst->retry_count = src->retry_count; > dst->rnr_retry_count = src->rnr_retry_count; > dst->srq = src->srq; > - dst->qp_num = src->qp_num; > + dst->qp_num = src->qp_num & 0xFFFFFF; Isn't src->qp_num coming from userspace? Why not return -EINVAL in such a case? Ira