* [PATCH] multipath: update discovery for sysfs layout changes
@ 2008-03-20 8:28 Hannes Reinecke
0 siblings, 0 replies; only message in thread
From: Hannes Reinecke @ 2008-03-20 8:28 UTC (permalink / raw)
To: christophe varoqui; +Cc: device-mapper development
[-- Attachment #1: Type: text/plain, Size: 465 bytes --]
Hi Christophe,
this patch updates the discovery to work when SYSFS_DEPRECATED is
not set. The change here is that the parent of a block device is
'block', and the 'real' parent is the parent of that. Easy and
non-intrusive change.
Please apply.
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)
[-- Attachment #2: multipath-tools-update-for-new-sysfs-layout --]
[-- Type: text/plain, Size: 823 bytes --]
commit e178e517afac5c66403baf564479da31b1219041
Author: Hannes Reinecke <hare@suse.de>
Date: Thu Mar 20 09:19:34 2008 +0100
Update discovery to work with new sysfs layout
With the new sysfs layout the parent device of a block device
it 'block', and only the parent of this is the 'real' parent.
Signed-off-by: Hannes Reinecke <hare@suse.de>
diff --git a/libmultipath/discovery.c b/libmultipath/discovery.c
index a85a248..30c36e5 100644
--- a/libmultipath/discovery.c
+++ b/libmultipath/discovery.c
@@ -550,6 +550,9 @@ sysfs_pathinfo(struct path * pp)
if (!parent)
parent = pp->sysdev;
+ if (!strncmp(parent->kernel, "block",5))
+ parent = sysfs_device_get_parent(parent);
+
condlog(3, "%s: subsystem = %s", pp->dev, parent->subsystem);
if (!strncmp(parent->subsystem, "scsi",4))
[-- Attachment #3: Type: text/plain, Size: 0 bytes --]
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2008-03-20 8:28 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-20 8:28 [PATCH] multipath: update discovery for sysfs layout changes Hannes Reinecke
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.