Thread (5 messages) 5 messages, 3 authors, 2013-09-13

Re: Implementing --detail-platform for DDF

From: Martin Wilck <hidden>
Date: 2013-09-13 17:25:22

On 09/13/2013 02:18 AM, Dan Williams wrote:
On Wed, Sep 11, 2013 at 2:00 PM, Martin Wilck [off-list ref] wrote:
quoted
Hi Neil,

I thought I might come up with an implementation of mdadm
--detail-platform for DDF, but I encountered a problem I'd like to discuss.

For DDF, we can't scan PCI devices like IMSM does, because we don't know
all controllers supporting DDF. Thus I considered scanning block devices
instead and looking at "foreign" vendor strings in the meta data;
possibly also filtering by device names or types. It occured to me that
it might be elegant to simply call conf_get_devs() for a list of devices
to be scanned. But if I do that, config.o and its dependencies must be
linked with mdmon, blowing up its size considerably. I figure that
that's a no-go. But I'm also reluctant to write my own DDF-specific
block device scanning code while there is conf_get_devs() already.

Perhaps I am misunderstanding the purpose of --detail-platform?
I wouldn't bother with it if YaST2/libstorage didn't call it in order to
check if a "fake RAID" platform is present.
--detail-platform is more about finding the presence of the raid
option-rom / firmware support.  I can imagine the installer may want
to confirm that an array is bootable before installing to it.

Is it enough to scan for devices that self-report as raid controllers?
 Problem then becomes finding a cross-implementation method to parse
the firmware signature to detect DDF capabilities.
That'd certainly be nice to have, but I can't imagine a way how to
collect these data unless the vendors contribute directly, as Intel did.
For LSI I'd be able to dig up a list of PCI IDs of RAID-capable
controllers, but that's about all I can think of. For other vendors I
have no information.

Regards
Martin

--
Dan
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help