I wrote: ... > - retval = scsi_add_device(host, 0, 0, lun); > - if (retval < 0) { > + sdev = __scsi_add_device(host, 0, 0, lun, sd); > + if (IS_ERR(sdev)) { We could also stick with scsi_add_device here, omit also the rest of thechanges to sbp2_login(), and set sdev->hostdata later in slave_alloc instead. But then... ... > static int sbp2_scsi_slave_alloc(struct scsi_device *sdev) > { > - struct sbp2_device *sd = (struct sbp2_device *)sdev->host->hostdata; > + struct sbp2_device *sd = sdev->hostdata; > > sdev->allow_restart = 1; ...we would have to keep the old expression here. However, sd can't be embedded into the shost anymore if we want multiple LUs beneath one shost. However, if you like I could retain this patch for now and resend it as part of a multi-LU patch series. -- Stefan Richter -=====-=-=== -==- =--=- http://arcgraph.de/sr/ - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html