Re: [osd-dev] [PATCH] osduld: Add osdname & systemid sysfs at scsi_osd class

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

 



On 10/24/2012 02:55 PM, Boaz Harrosh wrote:
> On 10/24/2012 02:51 PM, Boaz Harrosh wrote:
>>
>> This patch adds the support for the following two read-only sysfs attributes
>> to scsi_osd class members : osdname & systemid
>>
>> These attributes will show up as below in sysfs class hierarchy:
>> /sys/class/scsi_osd/osdX/osdname
>> /sys/class/scsi_osd/osdX/systemid
>>
>> The osdname & systemid are OSD device attributes which uniquely
>> identify a device on the network, while it's IP and certainly
>> it's /dev/osdX device path might change.
>> Userspace utilities (e.g. mkfs.exofs) can parse these attributes to
>> identify the correct OSD in safer and faster way.
>>
>> (Today osd apps open each device in the system and send a
>>  attributes query for these, in order to access the user
>>  requested device)
>>
>> Signed-off-by: Sachin Bhamare <sbhamare@xxxxxxxxxxx>
>> Signed-off-by: Boaz Harrosh <bharrosh@xxxxxxxxxxx>
> 
> James hi.
> 
> This is for the next (v3.8) merge window. Please submit to scsi-misc tree.
> 

James ping!

Do you want that I push it through my osd tree?

Thanks
Boaz

> It is actually a very old well tested, but forgotten patch.
> 
> Thanks
> Boaz
> 
>> ---
>>  drivers/scsi/osd/osd_uld.c |   28 ++++++++++++++++++++++++++++
>>  1 files changed, 28 insertions(+), 0 deletions(-)
>>
>> diff --git a/drivers/scsi/osd/osd_uld.c b/drivers/scsi/osd/osd_uld.c
>> index d4ed9eb..4375417 100644
>> --- a/drivers/scsi/osd/osd_uld.c
>> +++ b/drivers/scsi/osd/osd_uld.c
>> @@ -97,9 +97,37 @@ struct osd_dev_handle {
>>  
>>  static DEFINE_IDA(osd_minor_ida);
>>  
>> +/*
>> + * scsi sysfs attribute operations
>> + */
>> +static ssize_t osdname_show(struct device *dev, struct device_attribute *attr,
>> +			    char *buf)
>> +{
>> +	struct osd_uld_device *ould = container_of(dev, struct osd_uld_device,
>> +						   class_dev);
>> +	return sprintf(buf, "%s\n", ould->odi.osdname);
>> +}
>> +
>> +static ssize_t systemid_show(struct device *dev, struct device_attribute *attr,
>> +			    char *buf)
>> +{
>> +	struct osd_uld_device *ould = container_of(dev, struct osd_uld_device,
>> +						   class_dev);
>> +
>> +	memcpy(buf, ould->odi.systemid, ould->odi.systemid_len);
>> +	return ould->odi.systemid_len;
>> +}
>> +
>> +static struct device_attribute osd_uld_attrs[] = {
>> +	__ATTR(osdname, S_IRUGO, osdname_show, NULL),
>> +	__ATTR(systemid, S_IRUGO, systemid_show, NULL),
>> +	__ATTR_NULL,
>> +};
>> +
>>  static struct class osd_uld_class = {
>>  	.owner		= THIS_MODULE,
>>  	.name		= "scsi_osd",
>> +	.dev_attrs	= osd_uld_attrs,
>>  };
>>  
>>  /*
>>
> 
> 
> _______________________________________________
> osd-dev mailing list
> osd-dev@xxxxxxxxxxxx
> http://mailman.open-osd.org/mailman/listinfo/osd-dev
> 


--
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