Re: [PATCH 1/3] zfcp: IO stall after path checker changes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



James

I just saw that I posted this patch on 9th already, 
but todays git pull from your tree didn't show the inclusion of this one (and another patch posted the same day).
Event though it's reported in your summary from the 26 !
If I'm to quick then I'm sorry for sending it twice, if there's any other
reason for this patch to not be included please let me know.

Thanks
	Swen
On Tuesday 29 May 2007 15:29, Swen Schillig wrote:
> From: Michael Loehr <mloehr2@xxxxxxxxxxxxxxxxxx>
> 
> Devices corresponding to a deleted unit are never freed.
> This has the effect that slave_destroy is never called and zfcp
> 'thinks' that this unit is still registered.
> This patch changes the zfcp behaviour the way that the
> rport and sdev are not deleted anymore. The host is set to
> block on 'offline'. Host online is only removing the blocked status 
> and everything works as expected again.
> 
> Signed-off-by: Michael Loehr <mloehr2@xxxxxxxxxxxxxxxxxx>
> Signed-off-by: Swen Schillig <swen@xxxxxxxxxxxx>
> 
> ---
> 
>  drivers/s390/scsi/zfcp_aux.c  |    1 +
>  drivers/s390/scsi/zfcp_ccw.c  |    5 +----
>  drivers/s390/scsi/zfcp_scsi.c |    3 +++
>  3 files changed, 5 insertions(+), 4 deletions(-)
> 
> Index: linux_jb_patched/drivers/s390/scsi/zfcp_aux.c
> ===================================================================
> --- linux_jb_patched.orig/drivers/s390/scsi/zfcp_aux.c
> +++ linux_jb_patched/drivers/s390/scsi/zfcp_aux.c
> @@ -1127,6 +1127,7 @@ zfcp_adapter_dequeue(struct zfcp_adapter
>  	int retval = 0;
>  	unsigned long flags;
>  
> +	zfcp_adapter_scsi_unregister(adapter);
>  	device_unregister(&adapter->generic_services);
>  	zfcp_sysfs_adapter_remove_files(&adapter->ccw_device->dev);
>  	dev_set_drvdata(&adapter->ccw_device->dev, NULL);
> Index: linux_jb_patched/drivers/s390/scsi/zfcp_ccw.c
> ===================================================================
> --- linux_jb_patched.orig/drivers/s390/scsi/zfcp_ccw.c
> +++ linux_jb_patched/drivers/s390/scsi/zfcp_ccw.c
> @@ -189,9 +189,7 @@ zfcp_ccw_set_online(struct ccw_device *c
>   * @ccw_device: pointer to belonging ccw device
>   *
>   * This function gets called by the common i/o layer and sets an adapter
> - * into state offline. Setting an fcp device offline means that it will be
> - * unregistered from the SCSI stack and that the adapter will be shut down
> - * asynchronously.
> + * into state offline.
>   */
>  static int
>  zfcp_ccw_set_offline(struct ccw_device *ccw_device)
> @@ -202,7 +200,6 @@ zfcp_ccw_set_offline(struct ccw_device *
>  	adapter = dev_get_drvdata(&ccw_device->dev);
>  	zfcp_erp_adapter_shutdown(adapter, 0);
>  	zfcp_erp_wait(adapter);
> -	zfcp_adapter_scsi_unregister(adapter);
>  	zfcp_erp_thread_kill(adapter);
>  	zfcp_adapter_debug_unregister(adapter);
>  	up(&zfcp_data.config_sema);
> Index: linux_jb_patched/drivers/s390/scsi/zfcp_scsi.c
> ===================================================================
> --- linux_jb_patched.orig/drivers/s390/scsi/zfcp_scsi.c
> +++ linux_jb_patched/drivers/s390/scsi/zfcp_scsi.c
> @@ -569,6 +569,9 @@ zfcp_adapter_scsi_register(struct zfcp_a
>  	int retval = 0;
>  	static unsigned int unique_id = 0;
>  
> +	if (adapter->scsi_host)
> +		goto out;
> +
>  	/* register adapter as SCSI host with mid layer of SCSI stack */
>  	adapter->scsi_host = scsi_host_alloc(&zfcp_data.scsi_host_template,
>  					     sizeof (struct zfcp_adapter *));
> 
-
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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux