All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hannes Reinecke <hare@suse.de>
To: sekharan@linux.vnet.ibm.com
Cc: Mario Mech <mech@meteo.uni-koeln.de>,
	device-mapper development <dm-devel@redhat.com>,
	linux-scsi <linux-scsi@vger.kernel.org>
Subject: Re: [PATCH]: create sysfs file, dh_state for SCSI	devices even if they	are not in the inteernal lists
Date: Tue, 11 Aug 2009 10:54:12 +0200	[thread overview]
Message-ID: <4A8131B4.6000605@suse.de> (raw)
In-Reply-To: <1249329099.31433.23.camel@chandra-ubuntu>

Chandra Seetharaman wrote:
> Hi Hannes,
> 
> Can you comment on this please.
> 
> If you are convinced with my justification, please send an ACK.
> 
> Thanks & Regards,
> 
> chandra
> On Mon, 2009-06-29 at 12:30 -0700, Chandra Seetharaman wrote:
>> On Mon, 2009-06-29 at 09:40 +0200, Hannes Reinecke wrote:
>>> Chandra Seetharaman wrote:
>>>> Create the sysfs file, dh_state even if the new SCSI device is not
>>>> in the any of the device handler's internal lists.
>>>>
>>>> Signed-Off-by: Chandra Seetharaman <sekharan@us.ibm.com>
>>>> ---
>>>>  drivers/scsi/device_handler/scsi_dh.c |   11 ++++-------
>>>>  1 file changed, 4 insertions(+), 7 deletions(-)
>>>>
>>>> Index: linux-2.6.31-rc1/drivers/scsi/device_handler/scsi_dh.c
>>>> ===================================================================
>>>> --- linux-2.6.31-rc1.orig/drivers/scsi/device_handler/scsi_dh.c
>>>> +++ linux-2.6.31-rc1/drivers/scsi/device_handler/scsi_dh.c
>>>> @@ -304,18 +304,15 @@ static int scsi_dh_notifier(struct notif
>>>>  	sdev = to_scsi_device(dev);
>>>>  
>>>>  	if (action == BUS_NOTIFY_ADD_DEVICE) {
>>>> +		err = device_create_file(dev, &scsi_dh_state_attr);
>>>> +		/* don't care about err */
>>>>  		devinfo = device_handler_match(NULL, sdev);
>>>> -		if (!devinfo)
>>>> -			goto out;
>>>> -
>>>> -		err = scsi_dh_handler_attach(sdev, devinfo);
>>>> -		if (!err)
>>>> -			err = device_create_file(dev, &scsi_dh_state_attr);
>>>> +		if (devinfo)
>>>> +			err = scsi_dh_handler_attach(sdev, devinfo);
>>>>  	} else if (action == BUS_NOTIFY_DEL_DEVICE) {
>>>>  		device_remove_file(dev, &scsi_dh_state_attr);
>>>>  		scsi_dh_handler_detach(sdev, NULL);
>>>>  	}
>>>> -out:
>>>>  	return err;
>>>>  }
>>>>  
>>>>
>>>>
>>>> --
>>>> dm-devel mailing list
>>>> dm-devel@redhat.com
>>>> https://www.redhat.com/mailman/listinfo/dm-devel
>>> NACK.
>>>
>>> This will create sysfs attributes even if the attach()
>>> failed for other reason like a generic error. So we'll end
>>> up with device handler attributes and no device handler attached.
>> we do not have to worry about if attach failed or succeeded. We will
>> have "detached" if there is no device handler is attached to a device. 
>>
>> Basically, existence of this file simply means that scsi_dh module is
>> active, only the contents of this file will indicate if any device
>> handler is attached or not.
>>
>> We are just creating the file dh_state for each SCSI device that exists
>> and that is the only way non-in-built devices can be attached to a
>> handler by the end-user.
>>
>> Do note that we do create this file for all the existing scsi devices
>> when the scsi_dh module is inserted (see scsi_dh_init()).
>>
Right. So you're changing the semantics from the 'dh_state' attribute
to mean 'scsi_dh' is active, not 'a scsi_dh module has been attached'.

Ok, that seems reasonable.

Acked-by: Hannes Reinecke <hare@suse.de>

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      zSeries & Storage
hare@suse.de			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)

  reply	other threads:[~2009-08-11  8:54 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-27  2:31 [PATCH]: create sysfs file, dh_state for SCSI devices even if they are not in the inteernal lists Chandra Seetharaman
2009-06-29  7:40 ` [dm-devel] " Hannes Reinecke
2009-06-29 16:09   ` James Bottomley
2009-06-30  6:39     ` Hannes Reinecke
2009-06-29 19:30   ` Chandra Seetharaman
2009-07-07 19:43     ` [dm-devel] " Chandra Seetharaman
2009-08-03 19:51     ` Chandra Seetharaman
2009-08-11  8:54       ` Hannes Reinecke [this message]
2009-09-11 17:20 ` [RESEND] [PATCH]: scsi_dh: create sysfs file, dh_state for SCSI devices even if they are not in the internal lists Chandra Seetharaman

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=4A8131B4.6000605@suse.de \
    --to=hare@suse.de \
    --cc=dm-devel@redhat.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=mech@meteo.uni-koeln.de \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.