RE: [PATCH 1/4] Drivers: scsi: storvsc: In responce to a scan event, scan the host

From: Long Li
Date: Tue Dec 30 2014 - 14:36:58 EST




> -----Original Message-----
> From: devel [mailto:driverdev-devel-bounces@xxxxxxxxxxxxxxxxxxxxxx] On
> Behalf Of K. Y. Srinivasan
> Sent: Tuesday, December 16, 2014 1:22 PM
> To: gregkh@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> devel@xxxxxxxxxxxxxxxxxxxxxx; ohering@xxxxxxxx;
> jbottomley@xxxxxxxxxxxxx; hch@xxxxxxxxxxxxx; linux-scsi@xxxxxxxxxxxxxxx
> Subject: [PATCH 1/4] Drivers: scsi: storvsc: In responce to a scan event, scan
> the host
>
> The virtual HBA that storvsc implements can support multiple channels and
> targets. So, scan the host when the host notifies that a scan is needed.
>
> Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
Reviewed-by: Long Li <longli@xxxxxxxxxxxxx>
> ---
> drivers/scsi/storvsc_drv.c | 19 +++++++------------
> 1 files changed, 7 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/scsi/storvsc_drv.c b/drivers/scsi/storvsc_drv.c index
> e3ba251..0a96fef 100644
> --- a/drivers/scsi/storvsc_drv.c
> +++ b/drivers/scsi/storvsc_drv.c
> @@ -426,21 +426,16 @@ done:
> kfree(wrk);
> }
>
> -static void storvsc_bus_scan(struct work_struct *work)
> +static void storvsc_host_scan(struct work_struct *work)
> {
> struct storvsc_scan_work *wrk;
> - int id, order_id;
> + struct Scsi_Host *host;
>
> wrk = container_of(work, struct storvsc_scan_work, work);
> - for (id = 0; id < wrk->host->max_id; ++id) {
> - if (wrk->host->reverse_ordering)
> - order_id = wrk->host->max_id - id - 1;
> - else
> - order_id = id;
> -
> - scsi_scan_target(&wrk->host->shost_gendev, 0,
> - order_id, SCAN_WILD_CARD, 1);
> - }
> + host = wrk->host;
> +
> + scsi_scan_host(host);
> +
> kfree(wrk);
> }
>
> @@ -1198,7 +1193,7 @@ static void storvsc_on_receive(struct hv_device
> *device,
> if (!work)
> return;
>
> - INIT_WORK(&work->work, storvsc_bus_scan);
> + INIT_WORK(&work->work, storvsc_host_scan);
> work->host = stor_device->host;
> schedule_work(&work->work);
> break;
> --
> 1.7.4.1
>
> _______________________________________________
> devel mailing list
> devel@xxxxxxxxxxxxxxxxxxxxxx
> http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/