public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
From: Chandra Seetharaman <sekharan@us.ibm.com>
To: "Moger, Babu" <Babu.Moger@lsi.com>
Cc: "'linux-scsi@vger.kernel.org'" <linux-scsi@vger.kernel.org>,
	'device mapper development' <dm-devel@redhat.com>,
	"Chauhan, Vijay" <Vijay.Chauhan@lsi.com>,
	"Stankey, Robert" <Robert.Stankey@lsi.com>,
	"Dachepalli, Sudhir" <Sudhir.Dachepalli@lsi.com>
Subject: Re: [PATCH 1/3][RESUBMIT] scsi_dh_rdac: move the init code from rdac_activate to rdac_bus_attach
Date: Tue, 08 Sep 2009 08:35:30 -0700	[thread overview]
Message-ID: <1252424130.13253.0.camel@chandra-ubuntu> (raw)
In-Reply-To: <E463DF2B2E584B4A82673F53D62C2EF474CCD1BA@cosmail01.lsi.com>

Acked-by: Chandra Seetharaman <sekharan@us.ibm.com>
On Thu, 2009-09-03 at 21:42 -0600, Moger, Babu wrote:
> Moving the initialization code from rdac_activate to rdac_bus_attach which is more efficient.
> We don't have to collect all the information during every activate. 
> 
> Signed-off-by: Babu Moger <babu.moger@lsi.com>
> Reviewed-by: Vijay Chauhan <vijay.chauhan@lsi.com>
> Reviewed-by: Bob Stankey <Robert.stankey@lsi.com>
> 
> ---
> --- linux-2.6.31-rc5/drivers/scsi/device_handler/scsi_dh_rdac.c.orig	2009-09-03 13:39:52.000000000 -0500
> +++ linux-2.6.31-rc5/drivers/scsi/device_handler/scsi_dh_rdac.c	2009-09-03 14:10:40.000000000 -0500
> @@ -525,17 +525,6 @@ static int rdac_activate(struct scsi_dev
>  	if (err != SCSI_DH_OK)
>  		goto done;
>  
> -	if (!h->ctlr) {
> -		err = initialize_controller(sdev, h);
> -		if (err != SCSI_DH_OK)
> -			goto done;
> -	}
> -
> -	if (h->ctlr->use_ms10 == -1) {
> -		err = set_mode_select(sdev, h);
> -		if (err != SCSI_DH_OK)
> -			goto done;
> -	}
>  	if (h->lun_state == RDAC_LUN_UNOWNED)
>  		err = send_mode_select(sdev, h);
>  done:
> @@ -674,12 +663,20 @@ static int rdac_bus_attach(struct scsi_d
>  	if (err != SCSI_DH_OK)
>  		goto failed;
>  
> -	err = check_ownership(sdev, h);
> +	err = initialize_controller(sdev, h);
>  	if (err != SCSI_DH_OK)
>  		goto failed;
>  
> +	err = check_ownership(sdev, h);
> +	if (err != SCSI_DH_OK)
> +		goto clean_ctlr;
> +
> +	err = set_mode_select(sdev, h);
> +	if (err != SCSI_DH_OK)
> +		goto clean_ctlr;
> +
>  	if (!try_module_get(THIS_MODULE))
> -		goto failed;
> +		goto clean_ctlr;
>  
>  	spin_lock_irqsave(sdev->request_queue->queue_lock, flags);
>  	sdev->scsi_dh_data = scsi_dh_data;
> @@ -691,6 +688,9 @@ static int rdac_bus_attach(struct scsi_d
>  
>  	return 0;
>  
> +clean_ctlr:
> +	kref_put(&h->ctlr->kref, release_controller);
> +
>  failed:
>  	kfree(scsi_dh_data);
>  	sdev_printk(KERN_ERR, sdev, "%s: not attached\n",
> 
> 


      reply	other threads:[~2009-09-08 15:35 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-04  3:42 [PATCH 1/3][RESUBMIT] scsi_dh_rdac: move the init code from rdac_activate to rdac_bus_attach Moger, Babu
2009-09-08 15:35 ` Chandra Seetharaman [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1252424130.13253.0.camel@chandra-ubuntu \
    --to=sekharan@us.ibm.com \
    --cc=Babu.Moger@lsi.com \
    --cc=Robert.Stankey@lsi.com \
    --cc=Sudhir.Dachepalli@lsi.com \
    --cc=Vijay.Chauhan@lsi.com \
    --cc=dm-devel@redhat.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=sekharan@linux.vnet.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox