Convert to the much saner new idr interface.
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
        }
        handle->pcr = pcr;
 
-       if (!idr_pre_get(&rtsx_pci_idr, GFP_KERNEL)) {
-               ret = -ENOMEM;
-               goto free_handle;
-       }
-
+       idr_preload(GFP_KERNEL);
        spin_lock(&rtsx_pci_lock);
-       ret = idr_get_new(&rtsx_pci_idr, pcr, &pcr->id);
+       ret = idr_alloc(&rtsx_pci_idr, pcr, 0, 0, GFP_NOWAIT);
+       if (ret >= 0)
+               pcr->id = ret;
        spin_unlock(&rtsx_pci_lock);
-       if (ret)
+       idr_preload_end();
+       if (ret < 0)
                goto free_handle;
 
        pcr->pci = pcidev;