On Thu, Oct 22, 2015 at 03:23:05PM +0000, Handzik, Joe wrote:
Resending a second time, the mailing list didn't like that I
hadn't
signed up for it yet, and the links are wrong on the lsm wiki...
Option B would be really really rough. I have patches here:
https://github.com/HP-Scale-out-Storage/libstoragemgmt/tree/wip-all
They implement a bunch of really useful (to me and solutions I work
with, at least) features for physical disks, such as:
-support for exposure of scsi device node (some code already existed
for this, but I now expose the node via a method call)
As libstoragemgmt also
support SAN arrays, I would like suggest user
to use VPD83 NAA ID like this in Linux:
RAID mode:
/dev/disk/by-id/wwn-0x<lsm.Volume.vpd83>
HBA mode:
/dev/disk/by-id/wwn-0x<lsm.Disk.id>
# Not implemented yet, but could change HBA/JBOD disk
# to use VPD83 NAA ID as lsm.Disk.id.
# MegaRAID provides so. The hpssacli has no such info not
# yet, but it contains /dev/sdX where I could get VPD83
# NAA ID from.
And meanwhile, a dual domains SAS disk could be two sdX in OS, user
should not use /dev/sdX returned by this method when multipath is
enabled but search mpath using VPD83 NAA ID.
We just provide a ID where user could match it with OS stuff, that
would be enough for libstoragemgmt.
-support for exposure of scsi generic node
When user needs
'SCSI pass-through' they are could use
/dev/bsg/<sdX_scsi_id>
The sysfs is /sys/block/sdb/device/bsg, so there should be a udev way
to do so.
-support for discovery of a SEP associated with a disk, and caching
of the SEP's scsi generic node (leveraged for features below)
I believe a SES
plugin could do so.
-support for disk's sas address
The lsm.Disk is for a
physical disk, so we should allows each
disk has two SAS addresses, or be more precisely, two port IDs, since
disk might be SATA/FC/NVMe.
-support for disk's port/bay/box information (some code already
existed for this, but I'm querying via a mechanism that doesn't
involve hpssacli)
I check what I can do via SES.
-support to enable/disable physical disk IDENT LEDs via sg_ses
Can you renamed to follow <noun>+<verb> term:
disk_ident_led_set()
disk_ident_led_clear()
-support to enable/disable physical disk FAULT LEDs via sg_ses
Any user case we need fault LED?
There are a few RAID mode features in there too:
-support for exposure of volume's scsi device node
-support for exposure of volume's scsi generic node
Check above. It's not
libstoragemgmt's job to handle OS stuff.
-support to enable/disable volume's IDENT LEDs via hpssacli
Just wanted to get that out there to make sure we don't duplicate
work. If you haven't started much implementation work yet, I'd
I am working
the open source SES plugin, should be ready in 2 weeks.
https://github.com/cathay4t/libstoragemgmt/tree/ses
So no overlap yet.
prefer that you take a look at my patches as they're submitted
and
we can rework the implementation if necessary. The code I have here
is already in use by a teammate of mine for a Lustre solution, and I
will be using this code within Ceph in the near future (that work
hasn't started yet, but is my next task after upstreaming everything
you see in wip-all).
Thanks. I will try to merge them and open PR for reviews.
Best regards.
--
Gris Ge