Thanks, this looks much cleaner than the initial variant. > + if (dev_is_ide) { > + storvsc_get_ide_info(device, &target, &path); > + host_dev->path = device_info.path_id; > + host_dev->target = device_info.target_id; > + } else { > + host_dev->path = device_info.path_id; > + host_dev->target = device_info.target_id; > + } Is using the device_info values in both branches intentional? If so there's no need to have these assignments duplicated. > + if (dev_is_ide) { > + ret = scsi_add_device(host, 0, target, 0); > + if (ret) { > + scsi_remove_host(host); > + goto err_out; > + } I'd add another goto error label for this piece of error handling. _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel