Merge branch 'for-next' of git://git.pengutronix.de/git/ukl/linux into devel-stable
[cascardo/linux.git] / drivers / scsi / bfa / bfad_im.c
index 8f92732..5864f98 100644 (file)
@@ -523,20 +523,13 @@ bfad_im_scsi_host_alloc(struct bfad_s *bfad, struct bfad_im_port_s *im_port,
        int error = 1;
 
        mutex_lock(&bfad_mutex);
-       if (!idr_pre_get(&bfad_im_port_index, GFP_KERNEL)) {
+       error = idr_alloc(&bfad_im_port_index, im_port, 0, 0, GFP_KERNEL);
+       if (error < 0) {
                mutex_unlock(&bfad_mutex);
-               printk(KERN_WARNING "idr_pre_get failure\n");
+               printk(KERN_WARNING "idr_alloc failure\n");
                goto out;
        }
-
-       error = idr_get_new(&bfad_im_port_index, im_port,
-                                        &im_port->idr_id);
-       if (error) {
-               mutex_unlock(&bfad_mutex);
-               printk(KERN_WARNING "idr_get_new failure\n");
-               goto out;
-       }
-
+       im_port->idr_id = error;
        mutex_unlock(&bfad_mutex);
 
        im_port->shost = bfad_scsi_host_alloc(im_port, bfad);