Lines Matching refs:sdev
1502 static void ibmvfc_relogin(struct scsi_device *sdev) in ibmvfc_relogin() argument
1504 struct ibmvfc_host *vhost = shost_priv(sdev->host); in ibmvfc_relogin()
1505 struct fc_rport *rport = starget_to_rport(scsi_target(sdev)); in ibmvfc_relogin()
1961 static int ibmvfc_reset_device(struct scsi_device *sdev, int type, char *desc) in ibmvfc_reset_device() argument
1963 struct ibmvfc_host *vhost = shost_priv(sdev->host); in ibmvfc_reset_device()
1964 struct fc_rport *rport = starget_to_rport(scsi_target(sdev)); in ibmvfc_reset_device()
1985 tmf->cancel_key = cpu_to_be32((unsigned long)sdev->hostdata); in ibmvfc_reset_device()
1987 int_to_scsilun(sdev->lun, &tmf->iu.lun); in ibmvfc_reset_device()
1998 sdev_printk(KERN_ERR, sdev, "Failed to send %s reset event. rc=%d\n", in ibmvfc_reset_device()
2003 sdev_printk(KERN_INFO, sdev, "Resetting %s\n", desc); in ibmvfc_reset_device()
2013 sdev_printk(KERN_ERR, sdev, "%s reset failed: %s (%x:%x) " in ibmvfc_reset_device()
2020 sdev_printk(KERN_INFO, sdev, "%s reset successful\n", desc); in ibmvfc_reset_device()
2144 static int ibmvfc_cancel_all(struct scsi_device *sdev, int type) in ibmvfc_cancel_all() argument
2146 struct ibmvfc_host *vhost = shost_priv(sdev->host); in ibmvfc_cancel_all()
2147 struct scsi_target *starget = scsi_target(sdev); in ibmvfc_cancel_all()
2160 if (evt->cmnd && evt->cmnd->device == sdev) { in ibmvfc_cancel_all()
2168 sdev_printk(KERN_INFO, sdev, "No events found to cancel\n"); in ibmvfc_cancel_all()
2183 int_to_scsilun(sdev->lun, &tmf->lun); in ibmvfc_cancel_all()
2190 tmf->cancel_key = cpu_to_be32((unsigned long)sdev->hostdata); in ibmvfc_cancel_all()
2201 sdev_printk(KERN_ERR, sdev, "Failed to send cancel event. rc=%d\n", rsp_rc); in ibmvfc_cancel_all()
2208 sdev_printk(KERN_INFO, sdev, "Cancelling outstanding commands.\n"); in ibmvfc_cancel_all()
2217 sdev_printk(KERN_WARNING, sdev, "Cancel failed with rc=%x\n", status); in ibmvfc_cancel_all()
2229 sdev_printk(KERN_INFO, sdev, "Successfully cancelled outstanding commands\n"); in ibmvfc_cancel_all()
2276 static int ibmvfc_abort_task_set(struct scsi_device *sdev) in ibmvfc_abort_task_set() argument
2278 struct ibmvfc_host *vhost = shost_priv(sdev->host); in ibmvfc_abort_task_set()
2279 struct fc_rport *rport = starget_to_rport(scsi_target(sdev)); in ibmvfc_abort_task_set()
2291 if (evt->cmnd && evt->cmnd->device == sdev) { in ibmvfc_abort_task_set()
2299 sdev_printk(KERN_INFO, sdev, "No events found to abort\n"); in ibmvfc_abort_task_set()
2315 tmf->cancel_key = cpu_to_be32((unsigned long)sdev->hostdata); in ibmvfc_abort_task_set()
2317 int_to_scsilun(sdev->lun, &tmf->iu.lun); in ibmvfc_abort_task_set()
2329 sdev_printk(KERN_ERR, sdev, "Failed to send abort. rc=%d\n", rsp_rc); in ibmvfc_abort_task_set()
2333 sdev_printk(KERN_INFO, sdev, "Aborting outstanding commands\n"); in ibmvfc_abort_task_set()
2337 rc = ibmvfc_cancel_all(sdev, 0); in ibmvfc_abort_task_set()
2339 rc = ibmvfc_wait_for_ops(vhost, sdev->hostdata, ibmvfc_match_key); in ibmvfc_abort_task_set()
2345 sdev_printk(KERN_INFO, sdev, "Cancel failed, resetting host\n"); in ibmvfc_abort_task_set()
2348 rc = ibmvfc_wait_for_ops(vhost, sdev->hostdata, ibmvfc_match_key); in ibmvfc_abort_task_set()
2372 sdev_printk(KERN_ERR, sdev, "Abort failed: %s (%x:%x) " in ibmvfc_abort_task_set()
2379 sdev_printk(KERN_INFO, sdev, "Abort successful\n"); in ibmvfc_abort_task_set()
2397 struct scsi_device *sdev = cmd->device; in ibmvfc_eh_abort_handler() local
2398 struct ibmvfc_host *vhost = shost_priv(sdev->host); in ibmvfc_eh_abort_handler()
2406 cancel_rc = ibmvfc_cancel_all(sdev, IBMVFC_TMF_ABORT_TASK_SET); in ibmvfc_eh_abort_handler()
2407 ibmvfc_abort_task_set(sdev); in ibmvfc_eh_abort_handler()
2409 cancel_rc = ibmvfc_cancel_all(sdev, IBMVFC_TMF_SUPPRESS_ABTS); in ibmvfc_eh_abort_handler()
2412 rc = ibmvfc_wait_for_ops(vhost, sdev, ibmvfc_match_lun); in ibmvfc_eh_abort_handler()
2430 struct scsi_device *sdev = cmd->device; in ibmvfc_eh_device_reset_handler() local
2431 struct ibmvfc_host *vhost = shost_priv(sdev->host); in ibmvfc_eh_device_reset_handler()
2439 cancel_rc = ibmvfc_cancel_all(sdev, IBMVFC_TMF_LUN_RESET); in ibmvfc_eh_device_reset_handler()
2440 reset_rc = ibmvfc_reset_device(sdev, IBMVFC_LUN_RESET, "LUN"); in ibmvfc_eh_device_reset_handler()
2442 cancel_rc = ibmvfc_cancel_all(sdev, IBMVFC_TMF_SUPPRESS_ABTS); in ibmvfc_eh_device_reset_handler()
2445 rc = ibmvfc_wait_for_ops(vhost, sdev, ibmvfc_match_lun); in ibmvfc_eh_device_reset_handler()
2460 static void ibmvfc_dev_cancel_all_noreset(struct scsi_device *sdev, void *data) in ibmvfc_dev_cancel_all_noreset() argument
2463 *rc |= ibmvfc_cancel_all(sdev, IBMVFC_TMF_SUPPRESS_ABTS); in ibmvfc_dev_cancel_all_noreset()
2472 static void ibmvfc_dev_cancel_all_reset(struct scsi_device *sdev, void *data) in ibmvfc_dev_cancel_all_reset() argument
2475 *rc |= ibmvfc_cancel_all(sdev, IBMVFC_TMF_TGT_RESET); in ibmvfc_dev_cancel_all_reset()
2487 struct scsi_device *sdev = cmd->device; in ibmvfc_eh_target_reset_handler() local
2488 struct ibmvfc_host *vhost = shost_priv(sdev->host); in ibmvfc_eh_target_reset_handler()
2489 struct scsi_target *starget = scsi_target(sdev); in ibmvfc_eh_target_reset_handler()
2500 reset_rc = ibmvfc_reset_device(sdev, IBMVFC_TARGET_RESET, "target"); in ibmvfc_eh_target_reset_handler()
2546 struct scsi_device *sdev; in ibmvfc_terminate_rport_io() local
2550 shost_for_each_device(sdev, shost) { in ibmvfc_terminate_rport_io()
2551 dev_rport = starget_to_rport(scsi_target(sdev)); in ibmvfc_terminate_rport_io()
2554 ibmvfc_cancel_all(sdev, IBMVFC_TMF_SUPPRESS_ABTS); in ibmvfc_terminate_rport_io()
2833 static int ibmvfc_slave_alloc(struct scsi_device *sdev) in ibmvfc_slave_alloc() argument
2835 struct Scsi_Host *shost = sdev->host; in ibmvfc_slave_alloc()
2836 struct fc_rport *rport = starget_to_rport(scsi_target(sdev)); in ibmvfc_slave_alloc()
2844 sdev->hostdata = (void *)(unsigned long)vhost->task_set++; in ibmvfc_slave_alloc()
2881 static int ibmvfc_slave_configure(struct scsi_device *sdev) in ibmvfc_slave_configure() argument
2883 struct Scsi_Host *shost = sdev->host; in ibmvfc_slave_configure()
2887 if (sdev->type == TYPE_DISK) in ibmvfc_slave_configure()
2888 sdev->allow_restart = 1; in ibmvfc_slave_configure()
2902 static int ibmvfc_change_queue_depth(struct scsi_device *sdev, int qdepth) in ibmvfc_change_queue_depth() argument
2907 return scsi_change_queue_depth(sdev, qdepth); in ibmvfc_change_queue_depth()