diff options
author | Michael Tokarev <mjt@tls.msk.ru> | 2014-12-20 08:48:44 +0000 |
---|---|---|
committer | Michael Tokarev <mjt@tls.msk.ru> | 2014-12-20 08:48:44 +0000 |
commit | 489bea7ee8e1dbecfa517b8415568044ab57c73a (patch) | |
tree | 44d4878d4c7da3f4908ea9a765ef9b8f9c141756 /debian/patches/rebuildmap-strip-local-host-name-from-device-name.patch |
mdadm (3.3.2-5) unstable; urgency=medium
* use-tempnode-not-devnode.patch: change udev rules file to use
$tempnode which works both on wheezy and jessie udev, instead
of $devnode which only works in jessie. At this stage it is
better to make rules file compatible with old version instead
of adding versioned dependency. Should be removed for jessie+1.
(Closes: #770883)
* fix Closes: list in previous entry (Closes: #771852)
# imported from the archive
Diffstat (limited to 'debian/patches/rebuildmap-strip-local-host-name-from-device-name.patch')
-rw-r--r-- | debian/patches/rebuildmap-strip-local-host-name-from-device-name.patch | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/debian/patches/rebuildmap-strip-local-host-name-from-device-name.patch b/debian/patches/rebuildmap-strip-local-host-name-from-device-name.patch new file mode 100644 index 00000000..f7c9b1b7 --- /dev/null +++ b/debian/patches/rebuildmap-strip-local-host-name-from-device-name.patch @@ -0,0 +1,47 @@ +From 628cdf19ea35daad22e409e51c0abc7ffb19d6aa Mon Sep 17 00:00:00 2001 +From: NeilBrown <neilb@suse.de> +Date: Mon, 3 Nov 2014 12:49:05 +1100 +Subject: Rebuildmap: strip local host name from device name. + +When /run/mdadm/map is being rebuilt, e.g. by "mdadm -Ir", +if the device doesn't exist in /dev, we have to choose +a name. +Currently we don't strip the hostname which is wrong if +it is the local host. + +Reported-by: Stephen Kent <smkent@smkent.net> +Signed-off-by: NeilBrown <neilb@suse.de> +--- + mapfile.c | 13 ++++++++++--- + 1 file changed, 10 insertions(+), 3 deletions(-) + +diff --git a/mapfile.c b/mapfile.c +index 4e7f242..41599df 100644 +--- a/mapfile.c ++++ b/mapfile.c +@@ -455,12 +455,19 @@ void RebuildMap(void) + sep = ""; + } + } +- if (strchr(name, ':')) +- /* probably a uniquifying ++ if (strchr(name, ':')) { ++ /* Probably a uniquifying + * hostname prefix. Allow +- * without a suffix ++ * without a suffix, and strip ++ * hostname if it is us. + */ ++ if (homehost && unum == -1 && ++ strncmp(name, homehost, ++ strlen(homehost)) == 0 && ++ name[strlen(homehost)] == ':') ++ name += strlen(homehost)+1; + unum = -1; ++ } + + while (conflict) { + if (unum >= 0) +-- +1.7.10.4 + |