Signed-off-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Tejun Heo <tj@kernel.org>
Cc: Steve Wise <swise@opengridcomputing.com>
Cc: Tom Tucker <tom@opengridcomputing.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
 struct c2_qp_table {
        struct idr idr;
        spinlock_t lock;
-       int last;
 };
 
 struct c2_element {
 
        idr_preload(GFP_KERNEL);
        spin_lock_irq(&c2dev->qp_table.lock);
 
-       ret = idr_alloc(&c2dev->qp_table.idr, qp, c2dev->qp_table.last++, 0,
-                       GFP_NOWAIT);
+       ret = idr_alloc_cyclic(&c2dev->qp_table.idr, qp, 0, 0, GFP_NOWAIT);
        if (ret >= 0)
                qp->qpn = ret;