OBS User unknown 2007-01-15 23:25:57 +00:00 committed by Git OBS Bridge
commit 5c5ecaa98d
16 changed files with 5471 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

25
71-multipath.rules Normal file
View File

@ -0,0 +1,25 @@
#
# persistent links for device-mapper devices
# only hardware-backed device-mapper devices (ie multipath, dmraid,
# and kpartx) have meaningful persistent device names
#
KERNEL!="dm-*", GOTO="multipath_end"
ACTION=="add|remove", GOTO="multipath_end"
ACTION=="change", IMPORT{program}=="/sbin/kpartx_id %M %m"
# Create persistent links for tables
ACTION=="change", ENV{ID_DM_TABLE}=="mpath|dmraid", ENV{ID_DM_TYPE}=="?*", \
SYMLINK+="disk/by-id/$env{ID_DM_TYPE}-$env{ID_DM_NAME}"
# Create dm tables for partitions
ACTION=="change", ENV{ID_DM_TABLE}=="mpath|dmraid", \
RUN+="/sbin/kpartx -a -p _part /dev/mapper/$env{ID_DM_NAME}"
# Create persistent links for partitions
ACTION=="change", ENV{ID_DM_TABLE}=="part", ENV{ID_DM_TYPE}=="?*", \
SYMLINK+="disk/by-id/$env{ID_DM_TYPE}-$env{ID_DM_NAME}-part$env{ID_DM_PART}"
LABEL="multipath_end"

10
72-multipath-compat.rules Normal file
View File

@ -0,0 +1,10 @@
#
# SLES9 compability symlinks for multipathed devices
#
# Devices
ENV{ID_DMTYPE}=="multipath", ENV{ID_MPATH}=="?*", \
SYMLINK+="disk/by-name/$env{ID_MPATH}"
# Partitions
ENV{ID_DMTYPE}=="linear", ENV{ID_MPATH}=="?*", \
SYMLINK+="disk/by-name/$env{ID_MPATH}"

104
boot.multipath Normal file
View File

@ -0,0 +1,104 @@
#! /bin/sh
# Copyright (c) 2005 SuSE GmbH Nuernberg, Germany.
#
# Author: Hannes Reinecke <feedback@suse.de>
#
# init.d/boot.multipath
#
### BEGIN INIT INFO
# Provides: boot.multipath
# Required-Start: boot.device-mapper boot.udev
# Required-Stop:
# Default-Start: B
# Default-Stop:
# Description: Create multipath device targets
### END INIT INFO
PATH=/bin:/usr/bin:/sbin:/usr/sbin
PROGRAM=/sbin/multipath
# Set the maximum number of open files
MAX_OPEN_FDS=4096
test -x $PROGRAM || exit 5
# Shell functions sourced from /etc/rc.status:
# rc_check check and set local and overall rc status
# rc_status check and set local and overall rc status
# rc_status -v ditto but be verbose in local rc status
# rc_status -v -r ditto and clear the local rc status
# rc_failed set local and overall rc status to failed
# rc_reset clear local rc status (overall remains)
# rc_exit exit appropriate to overall rc status
. /etc/rc.status
# First reset status of this service
rc_reset
# Return values acc. to LSB for all commands but status:
# 0 - success
# 1 - misc error
# 2 - invalid or excess args
# 3 - unimplemented feature (e.g. reload)
# 4 - insufficient privilege
# 5 - program not installed
# 6 - program not configured
# 7 - program is not running
#
# Note that starting an already running service, stopping
# or restarting a not-running service as well as the restart
# with force-reload (in case signalling is not supported) are
# considered a success.
case "$1" in
start)
echo -n "Creating multipath targets"
# Check whether multipath daemon is already running
if /sbin/multipathd -k"list paths" > /dev/null 2>&1 ; then
echo -n " (multipathd running)"
rc_status -v
rc_exit
fi
# Load prerequisite module
modprobe dm-multipath
# Be a chicken and flush all existing maps
$PROGRAM -F
# Clear /dev/disk/by-name/ prior to start-up; multipath will
# recreate them.
rm -f /dev/disk/by-name/* 2>&1 >/dev/null
# Set the maximum number of open files
if [ -n "$MAX_OPEN_FDS" ] ; then
ulimit -n $MAX_OPEN_FDS
fi
# Start the program directly as checkproc doesn't work here
$PROGRAM -v 0
# Create all partitions which might have been missing
/sbin/dmsetup ls --target multipath --exec "/sbin/kpartx -a -p -part"
# Remember status and be verbose
rc_status -v
sleep 1
;;
stop)
# Remove all partition mappings
if dmsetup ls | grep -q -- -part; then
/sbin/dmsetup ls --target multipath --exec "/sbin/kpartx -d -p -part"
fi
# And remove the multipath mappings themselves
for map in $(/sbin/dmsetup ls --target multipath | cut -f 1); do
/sbin/dmsetup remove $map
done
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac
rc_exit

110
kpartx_id Normal file
View File

@ -0,0 +1,110 @@
#!/bin/bash
#
# kpartx_id
#
# Generates ID information for device-mapper tables.
#
# Copyright (C) 2006 SUSE Linux Products GmbH
# Author:
# Hannes Reinecke <hare@suse.de>
#
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation version 2 of the License.
#
# This script generates ID information used to generate persistent symlinks.
# It relies on the UUID strings generated by the various programs; the name
# of the tables are of no consequence.
#
# Please note that dmraid does not provide the UUIDs (yet); a patch has been
# sent upstream but has not been accepted yet.
#
DMSETUP=/sbin/dmsetup
MAJOR=$1
MINOR=$2
if [ -z "$MAJOR" -o -z "$MINOR" ]; then
echo "usage: $0 major minor"
exit 1;
fi
# Device-mapper not installed; not an error
if [ ! -x $DMSETUP ] ; then
exit 0
fi
# Get the table info
tblinfo=$($DMSETUP info -c --noheadings -o name,uuid -j $MAJOR -m $MINOR)
if [ $? -ne 0 ] || [ -z "$tblinfo" ]; then
exit $?
fi
set -- $(IFS=":"; echo $tblinfo)
tblname=$1
tbluuid=$2
if [ -z "$tbluuid" ] ; then
exit 0
fi
# Table UUIDs are always '<type>-<uuid>'.
dmuuid=${tbluuid#*-}
dmtbl=${tbluuid%%-*}
dmpart=${dmtbl#part}
# kpartx types are 'part<num>'
if [ "$dmpart" == "$dmtbl" ] ; then
dmpart=
else
dmtbl=part
fi
# Set the name of the table. We're only interested in dmraid,
# multipath, and kparts tables; everything else is ignored.
if [ "$dmtbl" == "part" ] ; then
# The name of the kpartx table is the name of the parent table
dmname=$($DMSETUP info -c --noheadings -o name -u $dmuuid)
# We need the dependencies of the parent table to figure out
# the type if the parent is a multipath table
case "$dmparent" in
mpath-*)
dmdeps=$($DMSETUP deps -u $dmuuid)
;;
esac
elif [ "$dmtbl" == "mpath" ] ; then
dmname=$tblname
# We need the dependencies of the table to figure out the type
dmdeps=$($DMSETUP deps -u $tbluuid)
elif [ "$dmtbl" == "dmraid" ] ; then
dmname=$tblname
fi
if [ -z "$dmname" ] ; then
exit 0
fi
echo "ID_DM_TABLE=$dmtbl"
echo "ID_DM_NAME=$dmname"
[ -n "$dmpart" ] && echo "ID_DM_PART=$dmpart"
# Figure out the type of the map. For non-multipath maps it's
# always 'raid'.
if [ -n "$dmdeps" ] ; then
case "$dmdeps" in
*\(94,*)
echo "ID_DM_TYPE=dasd"
;;
*\(9*)
echo "ID_DM_TYPE=raid"
;;
*)
echo "ID_DM_TYPE=scsi"
;;
esac
else
echo "ID_DM_TYPE=raid"
fi
exit 0

19
mpath_id Normal file
View File

@ -0,0 +1,19 @@
#!/bin/sh
major=$1
minor=$2
mpstatus=$(/sbin/dmsetup status -j $major -m $minor --target multipath)
if [ -z "$mpstatus" ]; then
exit 1
fi
mpid=$(/sbin/dmsetup info -c --noopencount --noheadings -o name -j $major -m $minor)
if [ -z "$mpid" ]; then
exit 1
fi
echo ID_MPATH=\"$mpid\"
exit 0

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1b48684c9ce956bb2294640a92f1da8ddea4e991e4d7b974697660de5e44a9d7
size 139312

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,140 @@
diff --git a/devmap_name/Makefile b/devmap_name/Makefile
index 380c85b..5551c9b 100644
--- a/devmap_name/Makefile
+++ b/devmap_name/Makefile
@@ -22,21 +22,19 @@ prepare:
glibc: prepare $(OBJS)
$(CC) $(OBJS) -o $(EXEC) $(LDFLAGS)
- $(GZIP) $(EXEC).8 > $(EXEC).8.gz
klibc: prepare $(OBJS)
$(CC) -static -o $(EXEC) $(OBJS)
- $(GZIP) $(EXEC).8 > $(EXEC).8.gz
install:
install -d $(DESTDIR)$(bindir)
install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)/
install -d $(DESTDIR)$(mandir)
- install -m 644 $(EXEC).8.gz $(DESTDIR)$(mandir)
+ install -m 644 $(EXEC).8 $(DESTDIR)$(mandir)
uninstall:
rm $(DESTDIR)$(bindir)/$(EXEC)
- rm $(DESTDIR)$(mandir)/$(EXEC).8.gz
+ rm $(DESTDIR)$(mandir)/$(EXEC).8
clean:
rm -f core *.o $(EXEC) *.gz
diff --git a/kpartx/Makefile b/kpartx/Makefile
index bf6e6c1..691ecbe 100644
--- a/kpartx/Makefile
+++ b/kpartx/Makefile
@@ -27,11 +27,9 @@ prepare:
glibc: prepare $(OBJS)
$(CC) $(OBJS) -o $(EXEC) $(LDFLAGS)
- $(GZIP) $(EXEC).8 > $(EXEC).8.gz
-
+
klibc: prepare $(OBJS)
$(CC) -static -o $(EXEC) $(CRT0) $(OBJS) $(KLIBC) $(LIBGCC)
- $(GZIP) $(EXEC).8 > $(EXEC).8.gz
$(MULTIPATHLIB)-$(BUILD).a:
make -C $(multipathdir) BUILD=$(BUILD)
@@ -40,7 +38,7 @@ install:
install -d $(DESTDIR)$(bindir)
install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)
install -d $(DESTDIR)$(mandir)
- install -m 644 $(EXEC).8.gz $(DESTDIR)$(mandir)
+ install -m 644 $(EXEC).8 $(DESTDIR)$(mandir)
uninstall:
rm -f $(DESTDIR)$(bindir)/$(EXEC)
diff --git a/multipath/Makefile b/multipath/Makefile
index 646dfc2..add1972 100644
--- a/multipath/Makefile
+++ b/multipath/Makefile
@@ -25,11 +25,9 @@ prepare:
glibc: prepare $(OBJS)
$(CC) $(OBJS) -o $(EXEC) $(LDFLAGS)
- $(GZIP) $(EXEC).8 > $(EXEC).8.gz
klibc: prepare $(OBJS)
$(CC) -static -o $(EXEC) $(CRT0) $(OBJS) $(KLIBC) $(LIBGCC)
- $(GZIP) $(EXEC).8 > $(EXEC).8.gz
$(CHECKERSLIB)-$(BUILD).a:
make -C $(checkersdir) BUILD=$(BUILD) $(BUILD)
@@ -43,12 +41,12 @@ install:
install -d $(DESTDIR)/etc/udev/rules.d
install -m 644 multipath.rules $(DESTDIR)/etc/udev/rules.d/
install -d $(DESTDIR)$(mandir)
- install -m 644 $(EXEC).8.gz $(DESTDIR)$(mandir)
+ install -m 644 $(EXEC).8 $(DESTDIR)$(mandir)
uninstall:
rm $(DESTDIR)/etc/udev/rules.d/multipath.rules
rm $(DESTDIR)$(bindir)/$(EXEC)
- rm $(DESTDIR)$(mandir)/$(EXEC).8.gz
+ rm $(DESTDIR)$(mandir)/$(EXEC).8
clean:
rm -f core *.o $(EXEC) *.gz
diff --git a/multipathd/Makefile b/multipathd/Makefile
index 8ad25ee..da351dc 100644
--- a/multipathd/Makefile
+++ b/multipathd/Makefile
@@ -35,7 +35,6 @@ klibc:
$(EXEC): clean $(OBJS)
$(CC) $(OBJS) -o $(EXEC) $(LDFLAGS)
- $(GZIP) $(EXEC).8 > $(EXEC).8.gz
$(CHECKERSLIB)-glibc.a:
$(MAKE) -C $(checkersdir) BUILD=glibc glibc
@@ -48,12 +47,12 @@ install:
install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)
install -d $(DESTDIR)$(rcdir)
install -d $(DESTDIR)$(mandir)
- install -m 644 $(EXEC).8.gz $(DESTDIR)$(mandir)
+ install -m 644 $(EXEC).8 $(DESTDIR)$(mandir)
uninstall:
rm -f $(DESTDIR)$(bindir)/$(EXEC)
rm -f $(DESTDIR)$(rcdir)/$(EXEC)
- rm -f $(DESTDIR)$(mandir)/$(EXEC).8.gz
+ rm -f $(DESTDIR)$(mandir)/$(EXEC).8
clean:
$(MAKE) -C $(multipathdir) prepare DAEMON=1
diff --git a/path_priority/pp_alua/Makefile b/path_priority/pp_alua/Makefile
index 983ffe3..c38990e 100644
--- a/path_priority/pp_alua/Makefile
+++ b/path_priority/pp_alua/Makefile
@@ -35,20 +35,17 @@ glibc: $(OBJS)
klibc: $(OBJS)
$(CC) -static -o $(EXEC) $(OBJS)
-install: $(BUILD) $(EXEC).8.gz
+install: $(BUILD) $(EXEC).8
$(INSTALL) -s -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
- $(INSTALL) -m 644 $(EXEC).8.gz $(DESTDIR)$(mandir)/$(EXEC).8.gz
+ $(INSTALL) -m 644 $(EXEC).8 $(DESTDIR)$(mandir)/$(EXEC).8
uninstall:
rm $(DESTDIR)$(bindir)/$(EXEC)
- rm $(DESTDIR)$(mandir)/$(EXEC).8.gz
+ rm $(DESTDIR)$(mandir)/$(EXEC).8
clean:
rm -f *.o *.gz $(EXEC)
-$(EXEC).8.gz: $(EXEC).8
- $(GZIP) $< >$@
-
main.o: main.c rtpg.h spc3.h
rtpg.o: rtpg.c rtpg.h spc3.h

View File

@ -0,0 +1,107 @@
diff --git a/libmultipath/discovery.c b/libmultipath/discovery.c
--- a/libmultipath/discovery.c
+++ b/libmultipath/discovery.c
@@ -209,6 +209,44 @@ sysfs_get_size (char * sysfs_path, char
return 0;
}
+int
+sysfs_get_online (char * sysfs_path, char * dev)
+{
+ char attr_path[SYSFS_PATH_SIZE];
+ char attr_buff[SYSFS_PATH_SIZE];
+ long r;
+ char *p;
+
+ if (safe_sprintf(attr_path, "%s/block/%s/online", sysfs_path, dev))
+ return -1;
+
+ if (0 > sysfs_read_attribute_value(attr_path, attr_buff, sizeof(attr_buff)))
+ return -1;
+
+ r = strtol(attr_buff,&p, 10);
+
+ if (attr_buff != p && r > 0)
+ return 1;
+
+ return 0;
+}
+
+int writeattr (char *path, const char *value)
+{
+ struct sysfs_attribute *attr;
+ int retval;
+
+ attr = sysfs_open_attribute(path);
+ if (!attr)
+ return -1;
+
+ retval = sysfs_write_attribute(attr, value, strlen(value));
+
+ sysfs_close_attribute(attr);
+
+ return retval > 0? -1 : 0;
+}
+
/*
* udev might be slow creating node files : wait
*/
@@ -565,6 +603,30 @@ sysfs_pathinfo(struct path * curpath)
return 0;
}
+extern int
+online_device(struct path *curpath)
+{
+ int online;
+ char attr_path[FILE_NAME_SIZE];
+
+ online = sysfs_get_online(sysfs_path, curpath->dev);
+ if (online > 0)
+ return 0;
+ else if(online < 0)
+ return 1;
+
+ if(safe_sprintf(attr_path, "%s/block/%s/device/online",
+ sysfs_path, curpath->dev)) {
+ condlog(0, "attr_path too small");
+ return 1;
+ }
+
+ condlog(1,"%s: setting device online", curpath->dev);
+ writeattr(attr_path, "1");
+
+ return 0;
+}
+
static int
apply_format (char * string, char * cmd, struct path * pp)
{
diff --git a/libmultipath/discovery.h b/libmultipath/discovery.h
--- a/libmultipath/discovery.h
+++ b/libmultipath/discovery.h
@@ -28,6 +28,7 @@ int sysfs_get_dev (char * sysfs_path, ch
int sysfs_get_size (char * sysfs_path, char * dev, unsigned long long *);
int path_discovery (vector pathvec, struct config * conf, int flag);
+int online_device (struct path *curpath);
void basename (char *, char *);
int get_serial (char * buff, int fd);
diff --git a/multipathd/main.c b/multipathd/main.c
--- a/multipathd/main.c
+++ b/multipathd/main.c
@@ -1185,6 +1185,13 @@ checkerloop (void *ap)
condlog(0, "%s: checkfn is void", pp->dev);
continue;
}
+
+ /*
+ * Set the device online for checkers
+ * to run successfully
+ */
+ online_device(pp);
+
newstate = pp->checkfn(pp->fd, checker_msg,
&pp->checker_context);

121
multipath-tools-strip.patch Normal file
View File

@ -0,0 +1,121 @@
--- devmap_name/Makefile
+++ devmap_name/Makefile
@@ -28,7 +28,7 @@
install:
install -d $(DESTDIR)$(bindir)
- install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)/
+ install -m 755 $(EXEC) $(DESTDIR)$(bindir)/
install -d $(DESTDIR)$(mandir)
install -m 644 $(EXEC).8 $(DESTDIR)$(mandir)
--- kpartx/Makefile
+++ kpartx/Makefile
@@ -36,7 +36,7 @@
install:
install -d $(DESTDIR)$(bindir)
- install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)
+ install -m 755 $(EXEC) $(DESTDIR)$(bindir)
install -d $(DESTDIR)$(mandir)
install -m 644 $(EXEC).8 $(DESTDIR)$(mandir)
--- multipath/Makefile
+++ multipath/Makefile
@@ -37,7 +37,7 @@
install:
install -d $(DESTDIR)$(bindir)
- install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)/
+ install -m 755 $(EXEC) $(DESTDIR)$(bindir)/
install -d $(DESTDIR)/etc/udev/rules.d
install -m 644 multipath.rules $(DESTDIR)/etc/udev/rules.d/
install -d $(DESTDIR)$(mandir)
--- multipathd/Makefile
+++ multipathd/Makefile
@@ -44,7 +44,7 @@
install:
install -d $(DESTDIR)$(bindir)
- install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)
+ install -m 755 $(EXEC) $(DESTDIR)$(bindir)
install -d $(DESTDIR)$(rcdir)
install -d $(DESTDIR)$(mandir)
install -m 644 $(EXEC).8 $(DESTDIR)$(mandir)
--- path_priority/pp_alua/Makefile
+++ path_priority/pp_alua/Makefile
@@ -36,7 +36,7 @@
$(CC) -static -o $(EXEC) $(OBJS)
install: $(BUILD) $(EXEC).8
- $(INSTALL) -s -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
+ $(INSTALL) -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
$(INSTALL) -m 644 $(EXEC).8 $(DESTDIR)$(mandir)/$(EXEC).8
uninstall:
--- path_priority/pp_balance_units/Makefile
+++ path_priority/pp_balance_units/Makefile
@@ -35,7 +35,7 @@
install:
install -d $(DESTDIR)$(bindir)
- install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)/
+ install -m 755 $(EXEC) $(DESTDIR)$(bindir)/
uninstall:
rm $(DESTDIR)$(bindir)/$(EXEC)
--- path_priority/pp_emc/Makefile
+++ path_priority/pp_emc/Makefile
@@ -14,7 +14,7 @@
$(CC) -static -o $(EXEC) $(OBJS)
install: $(EXEC)
- install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
+ install -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
uninstall:
rm $(DESTDIR)$(bindir)/$(EXEC)
--- path_priority/pp_hds_modular/Makefile
+++ path_priority/pp_hds_modular/Makefile
@@ -14,7 +14,7 @@
$(CC) -static -o $(EXEC) $(OBJS)
install: $(EXEC)
- install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
+ install -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
uninstall:
rm $(DESTDIR)$(bindir)/$(EXEC)
--- path_priority/pp_netapp/Makefile
+++ path_priority/pp_netapp/Makefile
@@ -14,7 +14,7 @@
$(CC) -static -o $(EXEC) $(OBJS)
install: $(EXEC)
- install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
+ install -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
uninstall:
rm $(DESTDIR)$(bindir)/$(EXEC)
--- path_priority/pp_random/Makefile
+++ path_priority/pp_random/Makefile
@@ -14,7 +14,7 @@
$(CC) -static -o $(EXEC) $(OBJS)
install: $(EXEC)
- install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
+ install -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
uninstall:
rm $(DESTDIR)$(bindir)/$(EXEC)
--- path_priority/pp_tpc/Makefile
+++ path_priority/pp_tpc/Makefile
@@ -14,7 +14,7 @@
$(CC) -static -o $(EXEC) $(OBJS)
install: $(EXEC)
- install -s -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
+ install -m 755 $(EXEC) $(DESTDIR)$(bindir)/$(EXEC)
uninstall:
rm $(DESTDIR)$(bindir)/$(EXEC)

398
multipath-tools.changes Normal file
View File

@ -0,0 +1,398 @@
-------------------------------------------------------------------
Mon Dec 4 16:51:13 CET 2006 - dmueller@suse.de
- don't build as root
-------------------------------------------------------------------
Fri Nov 17 11:55:00 CET 2006 - hare@suse.de
- integrate upstream fixes
- update udev rule for YaST2 dmraid support (217807])
-------------------------------------------------------------------
Mon Nov 6 13:11:17 CET 2006 - hare@suse.de
- Really fixup udev rule (216167).
-------------------------------------------------------------------
Fri Oct 20 02:07:47 CEST 2006 - ro@suse.de
- make it build
-------------------------------------------------------------------
Mon Sep 25 10:03:49 CEST 2006 - hare@suse.de
- update to latest fixes from git tree
- remove fixes integrated in upstream
- fixup udev rule (#203688)
-------------------------------------------------------------------
Thu Sep 14 00:18:10 CEST 2006 - ro@suse.de
- use device-mapper-devel in BuildRequires
-------------------------------------------------------------------
Thu Aug 31 10:56:01 CEST 2006 - hare@suse.de
- include latest fixes from git tree
- update kpartx_id and udev rules to work
with dmraid.
- Fix return value for multipath -l
-------------------------------------------------------------------
Thu Aug 17 02:07:59 CEST 2006 - ro@suse.de
- workaround problem in git-patch
normal patch can't do a "rename", so copy file first
-------------------------------------------------------------------
Tue Jul 11 15:04:59 CEST 2006 - hare@suse.de
- Update to official version 0.4.7
- Refactor git update to apply to 0.4.7
-------------------------------------------------------------------
Wed Jun 28 13:51:36 CEST 2006 - hare@suse.de
- Remove blacklisting of dasd device node,
use product_blacklist instead (#188688)
-------------------------------------------------------------------
Mon Jun 12 15:14:41 CEST 2006 - hare@suse.de
- Add 72-multipath-compat.rules to create 'by-name'
symlink again for compability (#183663)
-------------------------------------------------------------------
Fri Jun 2 12:47:05 CEST 2006 - hare@suse.de
- Merge in fixed from upstream
- Set device-mapper name correctly (#181127)
-------------------------------------------------------------------
Thu Jun 1 17:29:23 CEST 2006 - hare@suse.de
- Merge in fixes from upstream
- Fixup aliasing handling
- Fix string length in pp_alua
- Use correct regexp patterns for hwtable (#177842)
- Fixup 71-multipath.rules to work correctly with the
updated device-mapper online/offline events (#176516 - LTC23961)
- Add kpartx_id for the updated 71-multipath.rules
-------------------------------------------------------------------
Mon May 22 17:16:00 CEST 2006 - schwab@suse.de
- Don't strip binaries.
-------------------------------------------------------------------
Tue May 2 12:48:56 CEST 2006 - hare@suse.de
- Merge in fixes from upstream
- Merged local patches
- Added hds_modular prioritizer
- Remove merged patches
- Allow for setting of maximum number of open files (#149979)
- Implement 'stop' for init scripts
-------------------------------------------------------------------
Mon Apr 10 09:48:16 CEST 2006 - hare@suse.de
- Lowering priority for pp_tpc
- Split off DS6000 to fixup priority handler (#161347)
-------------------------------------------------------------------
Wed Apr 5 12:14:53 CEST 2006 - hare@suse.de
- Disable debug messages in pp_tpc.
-------------------------------------------------------------------
Wed Mar 29 09:27:50 CEST 2006 - hare@suse.de
- Explicitely create partitions at boot time (#159927)
-------------------------------------------------------------------
Thu Mar 23 11:36:25 CET 2006 - hare@suse.de
- Add hwtable entry for IBM 3526.
-------------------------------------------------------------------
Tue Mar 14 16:40:41 CET 2006 - hare@suse.de
- Fix another typo in mpath_id.
-------------------------------------------------------------------
Tue Mar 14 16:20:33 CET 2006 - hare@suse.de
- Fix typo in mpath_id.
-------------------------------------------------------------------
Mon Mar 13 13:29:08 CET 2006 - hare@suse.de
- Fix autobuild warnings.
- Include some minor fixed from upstream.
-------------------------------------------------------------------
Thu Mar 9 11:28:11 CET 2006 - hare@suse.de
- Add mpath_id program to call kpartx only on multipathed
devices (#149995 - LTC21557).
- Include latest fixes from upstream.
-------------------------------------------------------------------
Wed Feb 8 16:13:15 CET 2006 - hare@suse.de
- Add device blacklisting (#85778)
- Further manpage installation fixes (#146179, #147053, #147911)
-------------------------------------------------------------------
Wed Jan 25 21:38:27 CET 2006 - mls@suse.de
- converted neededforbuild to BuildRequires
-------------------------------------------------------------------
Thu Jan 19 13:59:32 CET 2006 - hare@suse.de
- Fix manpage installation.
-------------------------------------------------------------------
Tue Jan 17 09:01:03 CET 2006 - hare@suse.de
- Include latest git fixes
- Remove old patches which are now upstream
- Add new hwtable entry for shark (#142176)
-------------------------------------------------------------------
Fri Dec 16 15:20:47 CET 2005 - hare@suse.de
- Fix dependencies for /etc/init.d/boot.multipath
- Fix kpartx rules to generate proper partition names.
-------------------------------------------------------------------
Wed Dec 7 16:49:02 CET 2005 - hare@suse.de
- Update to multipath-tools-0.4.6
- Include latest git fixes
- Port patches from SLES9 SP3
-------------------------------------------------------------------
Mon Oct 31 12:30:14 CET 2005 - dmueller@suse.de
- don't build as root
-------------------------------------------------------------------
Mon Sep 5 17:40:04 CEST 2005 - matz@suse.de
- Fix broken usage of self-defined syscall [#114933].
-------------------------------------------------------------------
Fri Aug 26 16:00:36 CEST 2005 - hare@suse.de
- Fix kpartx DASD partition support
-------------------------------------------------------------------
Thu Aug 4 16:45:27 CEST 2005 - hare@suse.de
- Add 'directio' path checker
- Add support for S/390 DASD (PAV enablement).
- Update to package from SLES9
-------------------------------------------------------------------
Thu Jun 23 10:05:56 CEST 2005 - lmb@suse.de
- LUs with a WWN containing "fd" were blacklisted (#93562).
-------------------------------------------------------------------
Thu Jun 16 16:33:42 CEST 2005 - lmb@suse.de
- Remove stray newline character from /dev/disk/by-name/ entries
(#85798, #86763)
- Clear /dev/disk/by-name/ on boot. (#85978)
- scsi_id now handles EMC Symmetrix; remove work-around for #86760.
-------------------------------------------------------------------
Wed Jun 15 13:31:47 CEST 2005 - meissner@suse.de
- use RPM_OPT_FLAGS.
-------------------------------------------------------------------
Mon Jun 13 23:51:59 CEST 2005 - ro@suse.de
- neededforbuild: udev -> sysfsutils
-------------------------------------------------------------------
Tue Jun 7 15:38:36 CEST 2005 - lmb@suse.de
- Import fixes from upstream.
- Hardware table updates for IBM ESS and EMC CX (#81688).
- Reinstate paths correctly after failure/restore cycle (#85781,
#86444).
- Create map names again and fix segfault in devmap_name (#85798).
-------------------------------------------------------------------
Tue May 24 15:16:16 CEST 2005 - hare@suse.de
- Fix segmentation fault with EMC Symmetrix (#85614).
- Update EMC Symmetrix entry in hwtable.
-------------------------------------------------------------------
Mon May 23 12:21:31 CEST 2005 - hare@suse.de
- Add hwtable entry for IBM DS6000. (#63903)
- Do a rescan for devices if multipath command line option is set.
-------------------------------------------------------------------
Fri May 20 15:29:45 CEST 2005 - hare@suse.de
- Fix devmap_name to use mapname and return proper status (#84748).
-------------------------------------------------------------------
Thu May 12 12:10:39 CEST 2005 - lmb@suse.de
- Don't complain about default prio callout command (#81695).
- Reflect recent changes in boot.multipath as well as multipathd init
scripts.
- Actually fail paths when they are detected to be failed by multipathd
(#81679).
- killproc/startproc/checkproc can't be used with multipathd because of
the way the daemon switches to its own namespace (#80443).
-------------------------------------------------------------------
Mon May 9 11:18:35 CEST 2005 - hare@suse.de
- Use proper path checker for SGI TPC arrays.
- Update hwtable entries for SGI TP9400 and SGI TP9500.
- Write correct PID file (#80443).
-------------------------------------------------------------------
Mon Apr 25 11:41:33 CEST 2005 - lmb@suse.de
- Update to 0.4.4: pp_alua now licensed as GPL (#78628).
- multipath-tools-oom-adj.patch: oom_adj to a valid value.
-------------------------------------------------------------------
Thu Apr 21 10:50:05 CEST 2005 - lmb@suse.de
- Update to 0.4.4-pre18 which fixes the multipathd to initialize
correctly in the absence of a configuration file (79239).
-------------------------------------------------------------------
Wed Apr 20 16:05:56 CEST 2005 - lmb@suse.de
- Put multipath cache back into /dev because /var might not be mounted.
- Correct hwtable entry SGI TP9400, TP9500 and IBM 3542.
-------------------------------------------------------------------
Wed Apr 20 13:32:51 CEST 2005 - lmb@suse.de
- Update to 0.4.4-pre16
- Build against device-mapper.1.01.xx correctly.
-------------------------------------------------------------------
Tue Apr 19 12:02:49 CEST 2005 - lmb@suse.de
- Build w/o device-mapper update again.
-------------------------------------------------------------------
Mon Apr 18 14:21:59 CEST 2005 - lmb@suse.de
- Update to 0.4.4-pre14
- Build versus device-mapper-1.01.01 to prevent deadlocks in
kernel-space.
- Fix devmap_name to work with udev.
- Fix startup of multipathd w/o configuration file present.
-------------------------------------------------------------------
Fri Apr 15 14:46:19 CEST 2005 - lmb@suse.de
- Add path priority checker for EMC CLARiiON and make necessary
adjustments so that it gets called by default (#62491).
- Set the default udev dir to '/dev'
-------------------------------------------------------------------
Fri Apr 15 13:18:42 CEST 2005 - hare@suse.de
- Fix to allocate default strings (#78056)
- Fix default entry for TPC9500.
-------------------------------------------------------------------
Wed Apr 13 08:30:21 CEST 2005 - hare@suse.de
- Added pp_alua path priority checker.
- Update to multipath-tools-0.4.4-pre12.
-------------------------------------------------------------------
Mon Apr 11 13:32:05 CEST 2005 - hare@suse.de
- Update to multipath-tools-0.4.4-pre10.
-------------------------------------------------------------------
Fri Apr 8 09:38:16 CEST 2005 - hare@suse.de
- Update multipath to handle only true multipath devices (#62491).
- Update kpartx to use the device mapper target name if available.
- Add boot.multipath script for early set up of multipath targets.
-------------------------------------------------------------------
Thu Mar 31 09:32:12 CEST 2005 - hare@suse.de
- Update devmap_name to select targets by table type (#62493).
-------------------------------------------------------------------
Tue Jan 25 11:16:26 CET 2005 - lmb@suse.de
- Update to 0.4.2 and fix some bugs + add support for the extended DM
multipath kernel module. (#47491)
-------------------------------------------------------------------
Thu Nov 11 18:15:15 CET 2004 - hare@suse.de
- Fix bugs to make it work on S/390 (#47491).
-------------------------------------------------------------------
Fri Nov 5 13:58:00 CET 2004 - hare@suse.de
- Update to version 0.3.6 (#47491).
- Fix multipath init script
- Install configuration file example.
- Install multipathd in /sbin instead of /usr/bin.
-------------------------------------------------------------------
Tue Jul 20 09:22:11 CEST 2004 - fehr@suse.de
- updated README mp-tools-issues.pdf (see #40640)
-------------------------------------------------------------------
Wed Jun 9 12:18:01 CEST 2004 - fehr@suse.de
- added pdf with README to package (see #40640)
-------------------------------------------------------------------
Thu Jun 3 18:11:41 CEST 2004 - fehr@suse.de
- updated to version 0.2.1
- removed patches zero-currpath.patch and rm-newline-in-name.patch
already contained in 0.2.1
-------------------------------------------------------------------
Thu Jun 3 09:38:49 CEST 2004 - fehr@suse.de
- added patch zero-currpath.patch (see bugzilla #40640)
-------------------------------------------------------------------
Wed May 26 20:14:05 CEST 2004 - uli@suse.de
- fixed to build on s390x
-------------------------------------------------------------------
Wed May 26 10:57:37 CEST 2004 - fehr@suse.de
- added patch rm-newline-in-name.patch (see bugzilla #40640)
-------------------------------------------------------------------
Tue May 25 10:43:15 CEST 2004 - fehr@suse.de
- created initial version of a SuSE package from version 0.2.0 of
multipath tools
-------------------------------------------------------------------

322
multipath-tools.spec Normal file
View File

@ -0,0 +1,322 @@
#
# spec file for package multipath-tools (Version 0.4.7)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: multipath-tools
BuildRequires: device-mapper-devel readline-devel sysfsutils
URL: http://christophe.varoqui.free.fr/
License: BSD License and BSD-like, GNU General Public License (GPL)
Group: System/Base
Requires: device-mapper
%if %suse_version > 800
PreReq: %insserv_prereq
%endif
Autoreqprov: on
Version: 0.4.7
Release: 29
Summary: Tools to Manage Multipathed Devices with the device-mapper
Source: multipath-tools-%{version}.tar.bz2
Source1: multipathd
Source3: 71-multipath.rules
Source4: boot.multipath
Source5: mpath_id
Source6: kpartx_id
Source7: 72-multipath-compat.rules
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Patch0: %{name}-git-update.patch
Patch10: %{name}-online-device.patch
Patch11: %{name}-no-gz-for-manpage
Patch15: %{name}-strip.patch
%description
This package provides the tools to manage multipathed devices by
instructing the device-mapper multipath module what to do. The tools
are:
- multipath: scans the system for multipathed devices, assembles
them, and updates the device-mapper's maps
- multipathd: waits for maps events then execs multipath
- devmap-name: provides a meaningful device name to udev for devmaps
- kpartx: maps linear devmaps to device partitions, which makes
multipath maps partionable
Authors:
--------
Christophe Varoqui <christophe.varoqui@free.fr>
%prep
%setup -n multipath-tools-%{version}
%patch0 -p1
%patch11 -p1
%patch15
%build
make OPTFLAGS="$RPM_OPT_FLAGS" BUILD=glibc
%install
mkdir -p $RPM_BUILD_ROOT/sbin
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man8
make DESTDIR=$RPM_BUILD_ROOT install
rm $RPM_BUILD_ROOT/etc/udev/rules.d/multipath.rules
install -m 644 %{SOURCE3} $RPM_BUILD_ROOT/etc/udev/rules.d
install -m 644 %{SOURCE7} $RPM_BUILD_ROOT/etc/udev/rules.d
mkdir -p $RPM_BUILD_ROOT/etc/init.d
install -m 744 %{SOURCE1} $RPM_BUILD_ROOT/etc/init.d
install -m 744 %{SOURCE4} $RPM_BUILD_ROOT/etc/init.d
install -m 755 %{SOURCE5} $RPM_BUILD_ROOT/sbin
install -m 755 %{SOURCE6} $RPM_BUILD_ROOT/sbin
mkdir -p $RPM_BUILD_ROOT/var/cache/multipath/
%clean
[ "$RPM_BUILD_ROOT" != / ] && [ -d $RPM_BUILD_ROOT ] && rm -rf $RPM_BUILD_ROOT;
%post
#%{insserv /etc/init.d/multipathd}
#%{fillup_and_insserv boot.multipath}
%postun
%{insserv_cleanup}
%files
%defattr(-,root,root)
%doc AUTHOR COPYING README ChangeLog
%doc multipath.conf*
%config /etc/init.d/multipathd
%config /etc/init.d/boot.multipath
%config /etc/udev
/sbin/devmap_name
/sbin/multipath
/sbin/kpartx
/sbin/mpath_id
/sbin/kpartx_id
/sbin/multipathd
/sbin/mpath_prio_netapp
/sbin/mpath_prio_balance_units
/sbin/mpath_prio_random
/sbin/mpath_prio_alua
/sbin/mpath_prio_emc
/sbin/mpath_prio_tpc
/sbin/mpath_prio_hds_modular
%attr (0700, root, root) /var/cache/multipath
%{_mandir}/man8/devmap_name.8*
%{_mandir}/man8/multipath.8*
%{_mandir}/man8/kpartx.8*
%{_mandir}/man8/multipathd.8*
%{_mandir}/man8/mpath_prio_alua.8*
%changelog -n multipath-tools
* Mon Dec 04 2006 - dmueller@suse.de
- don't build as root
* Fri Nov 17 2006 - hare@suse.de
- integrate upstream fixes
- update udev rule for YaST2 dmraid support (217807])
* Mon Nov 06 2006 - hare@suse.de
- Really fixup udev rule (216167).
* Fri Oct 20 2006 - ro@suse.de
- make it build
* Mon Sep 25 2006 - hare@suse.de
- update to latest fixes from git tree
- remove fixes integrated in upstream
- fixup udev rule (#203688)
* Thu Sep 14 2006 - ro@suse.de
- use device-mapper-devel in BuildRequires
* Thu Aug 31 2006 - hare@suse.de
- include latest fixes from git tree
- update kpartx_id and udev rules to work
with dmraid.
- Fix return value for multipath -l
* Thu Aug 17 2006 - ro@suse.de
- workaround problem in git-patch
normal patch can't do a "rename", so copy file first
* Tue Jul 11 2006 - hare@suse.de
- Update to official version 0.4.7
- Refactor git update to apply to 0.4.7
* Wed Jun 28 2006 - hare@suse.de
- Remove blacklisting of dasd device node,
use product_blacklist instead (#188688)
* Mon Jun 12 2006 - hare@suse.de
- Add 72-multipath-compat.rules to create 'by-name'
symlink again for compability (#183663)
* Fri Jun 02 2006 - hare@suse.de
- Merge in fixed from upstream
- Set device-mapper name correctly (#181127)
* Thu Jun 01 2006 - hare@suse.de
- Merge in fixes from upstream
- Fixup aliasing handling
- Fix string length in pp_alua
- Use correct regexp patterns for hwtable (#177842)
- Fixup 71-multipath.rules to work correctly with the
updated device-mapper online/offline events (#176516 - LTC23961)
- Add kpartx_id for the updated 71-multipath.rules
* Mon May 22 2006 - schwab@suse.de
- Don't strip binaries.
* Tue May 02 2006 - hare@suse.de
- Merge in fixes from upstream
- Merged local patches
- Added hds_modular prioritizer
- Remove merged patches
- Allow for setting of maximum number of open files (#149979)
- Implement 'stop' for init scripts
* Mon Apr 10 2006 - hare@suse.de
- Lowering priority for pp_tpc
- Split off DS6000 to fixup priority handler (#161347)
* Wed Apr 05 2006 - hare@suse.de
- Disable debug messages in pp_tpc.
* Wed Mar 29 2006 - hare@suse.de
- Explicitely create partitions at boot time (#159927)
* Thu Mar 23 2006 - hare@suse.de
- Add hwtable entry for IBM 3526.
* Tue Mar 14 2006 - hare@suse.de
- Fix another typo in mpath_id.
* Tue Mar 14 2006 - hare@suse.de
- Fix typo in mpath_id.
* Mon Mar 13 2006 - hare@suse.de
- Fix autobuild warnings.
- Include some minor fixed from upstream.
* Thu Mar 09 2006 - hare@suse.de
- Add mpath_id program to call kpartx only on multipathed
devices (#149995 - LTC21557).
- Include latest fixes from upstream.
* Wed Feb 08 2006 - hare@suse.de
- Add device blacklisting (#85778)
- Further manpage installation fixes (#146179, #147053, #147911)
* Wed Jan 25 2006 - mls@suse.de
- converted neededforbuild to BuildRequires
* Thu Jan 19 2006 - hare@suse.de
- Fix manpage installation.
* Tue Jan 17 2006 - hare@suse.de
- Include latest git fixes
- Remove old patches which are now upstream
- Add new hwtable entry for shark (#142176)
* Fri Dec 16 2005 - hare@suse.de
- Fix dependencies for /etc/init.d/boot.multipath
- Fix kpartx rules to generate proper partition names.
* Wed Dec 07 2005 - hare@suse.de
- Update to multipath-tools-0.4.6
- Include latest git fixes
- Port patches from SLES9 SP3
* Mon Oct 31 2005 - dmueller@suse.de
- don't build as root
* Mon Sep 05 2005 - matz@suse.de
- Fix broken usage of self-defined syscall [#114933].
* Fri Aug 26 2005 - hare@suse.de
- Fix kpartx DASD partition support
* Thu Aug 04 2005 - hare@suse.de
- Add 'directio' path checker
- Add support for S/390 DASD (PAV enablement).
- Update to package from SLES9
* Thu Jun 23 2005 - lmb@suse.de
- LUs with a WWN containing "fd" were blacklisted (#93562).
* Thu Jun 16 2005 - lmb@suse.de
- Remove stray newline character from /dev/disk/by-name/ entries
(#85798, #86763)
- Clear /dev/disk/by-name/ on boot. (#85978)
- scsi_id now handles EMC Symmetrix; remove work-around for #86760.
* Wed Jun 15 2005 - meissner@suse.de
- use RPM_OPT_FLAGS.
* Mon Jun 13 2005 - ro@suse.de
- neededforbuild: udev -> sysfsutils
* Tue Jun 07 2005 - lmb@suse.de
- Import fixes from upstream.
- Hardware table updates for IBM ESS and EMC CX (#81688).
- Reinstate paths correctly after failure/restore cycle (#85781,
[#86444]).
- Create map names again and fix segfault in devmap_name (#85798).
* Tue May 24 2005 - hare@suse.de
- Fix segmentation fault with EMC Symmetrix (#85614).
- Update EMC Symmetrix entry in hwtable.
* Mon May 23 2005 - hare@suse.de
- Add hwtable entry for IBM DS6000. (#63903)
- Do a rescan for devices if multipath command line option is set.
* Fri May 20 2005 - hare@suse.de
- Fix devmap_name to use mapname and return proper status (#84748).
* Thu May 12 2005 - lmb@suse.de
- Don't complain about default prio callout command (#81695).
- Reflect recent changes in boot.multipath as well as multipathd init
scripts.
- Actually fail paths when they are detected to be failed by multipathd
(#81679).
- killproc/startproc/checkproc can't be used with multipathd because of
the way the daemon switches to its own namespace (#80443).
* Mon May 09 2005 - hare@suse.de
- Use proper path checker for SGI TPC arrays.
- Update hwtable entries for SGI TP9400 and SGI TP9500.
- Write correct PID file (#80443).
* Mon Apr 25 2005 - lmb@suse.de
- Update to 0.4.4: pp_alua now licensed as GPL (#78628).
- multipath-tools-oom-adj.patch: oom_adj to a valid value.
* Thu Apr 21 2005 - lmb@suse.de
- Update to 0.4.4-pre18 which fixes the multipathd to initialize
correctly in the absence of a configuration file (79239).
* Wed Apr 20 2005 - lmb@suse.de
- Put multipath cache back into /dev because /var might not be mounted.
- Correct hwtable entry SGI TP9400, TP9500 and IBM 3542.
* Wed Apr 20 2005 - lmb@suse.de
- Update to 0.4.4-pre16
- Build against device-mapper.1.01.xx correctly.
* Tue Apr 19 2005 - lmb@suse.de
- Build w/o device-mapper update again.
* Mon Apr 18 2005 - lmb@suse.de
- Update to 0.4.4-pre14
- Build versus device-mapper-1.01.01 to prevent deadlocks in
kernel-space.
- Fix devmap_name to work with udev.
- Fix startup of multipathd w/o configuration file present.
* Fri Apr 15 2005 - lmb@suse.de
- Add path priority checker for EMC CLARiiON and make necessary
adjustments so that it gets called by default (#62491).
- Set the default udev dir to '/dev'
* Fri Apr 15 2005 - hare@suse.de
- Fix to allocate default strings (#78056)
- Fix default entry for TPC9500.
* Wed Apr 13 2005 - hare@suse.de
- Added pp_alua path priority checker.
- Update to multipath-tools-0.4.4-pre12.
* Mon Apr 11 2005 - hare@suse.de
- Update to multipath-tools-0.4.4-pre10.
* Fri Apr 08 2005 - hare@suse.de
- Update multipath to handle only true multipath devices (#62491).
- Update kpartx to use the device mapper target name if available.
- Add boot.multipath script for early set up of multipath targets.
* Thu Mar 31 2005 - hare@suse.de
- Update devmap_name to select targets by table type (#62493).
* Tue Jan 25 2005 - lmb@suse.de
- Update to 0.4.2 and fix some bugs + add support for the extended DM
multipath kernel module. (#47491)
* Thu Nov 11 2004 - hare@suse.de
- Fix bugs to make it work on S/390 (#47491).
* Fri Nov 05 2004 - hare@suse.de
- Update to version 0.3.6 (#47491).
- Fix multipath init script
- Install configuration file example.
- Install multipathd in /sbin instead of /usr/bin.
* Tue Jul 20 2004 - fehr@suse.de
- updated README mp-tools-issues.pdf (see #40640)
* Wed Jun 09 2004 - fehr@suse.de
- added pdf with README to package (see #40640)
* Thu Jun 03 2004 - fehr@suse.de
- updated to version 0.2.1
- removed patches zero-currpath.patch and rm-newline-in-name.patch
already contained in 0.2.1
* Thu Jun 03 2004 - fehr@suse.de
- added patch zero-currpath.patch (see bugzilla #40640)
* Wed May 26 2004 - uli@suse.de
- fixed to build on s390x
* Wed May 26 2004 - fehr@suse.de
- added patch rm-newline-in-name.patch (see bugzilla #40640)
* Tue May 25 2004 - fehr@suse.de
- created initial version of a SuSE package from version 0.2.0 of
multipath tools

155
multipathd Normal file
View File

@ -0,0 +1,155 @@
#! /bin/sh
# Copyright (c) 1995-2001 SuSE GmbH Nuernberg, Germany.
#
# Author: Thorsten Kukuk <feedback@suse.de>
#
# init.d/routed
#
# and symbolic its link
#
# /usr/sbin/rcrouted
#
### BEGIN INIT INFO
# Provides: multipathd
# Required-Start: $syslog
# Required-Stop:
# Default-Start: 3 5
# Default-Stop: 0 1 2 4 6
# Description: Starts multipath daemon
### END INIT INFO
PATH=/bin:/usr/bin:/sbin:/usr/sbin
DAEMON=/sbin/multipathd
PIDFILE=/var/run/multipathd.pid
# Set the maximum number of open files
MAX_OPEN_FDS=4096
test -x $DAEMON || exit 5
# Shell functions sourced from /etc/rc.status:
# rc_check check and set local and overall rc status
# rc_status check and set local and overall rc status
# rc_status -v ditto but be verbose in local rc status
# rc_status -v -r ditto and clear the local rc status
# rc_failed set local and overall rc status to failed
# rc_reset clear local rc status (overall remains)
# rc_exit exit appropriate to overall rc status
. /etc/rc.status
# First reset status of this service
rc_reset
# Return values acc. to LSB for all commands but status:
# 0 - success
# 1 - misc error
# 2 - invalid or excess args
# 3 - unimplemented feature (e.g. reload)
# 4 - insufficient privilege
# 5 - program not installed
# 6 - program not configured
# 7 - program is not running
#
# Note that starting an already running service, stopping
# or restarting a not-running service as well as the restart
# with force-reload (in case signalling is not supported) are
# considered a success.
case "$1" in
start)
echo -n "Starting multipathd"
modprobe dm-multipath
# Set the maximum number of open files
if [ -n "$MAX_OPEN_FDS" ] ; then
ulimit -n $MAX_OPEN_FDS
fi
if [ -f $PIDFILE ]; then
PID="$(cat $PIDFILE)"
PROCNAME="$(ps -o cmd --no-headers $PID)"
fi
if [ "$PROCNAME" != "$DAEMON" ]; then
$DAEMON
fi
# Remember status and be verbose
rc_status -v
sleep 1
;;
stop)
echo -n "Shutting down multipathd"
# Because of the way how multipathd sets up its own namespace
# and chroots to it, killproc cannot be used with this process.
# So implement a cruder version:
if [ -f $PIDFILE ]; then
PID="$(cat $PIDFILE)"
PROCNAME="$(ps -o cmd --no-headers $PID)"
fi
if [ "$PROCNAME" == "$DAEMON" ]; then
kill -TERM $PID
fi
# Remember status and be verbose
rc_status -v
;;
try-restart)
## Stop the service and if this succeeds (i.e. the
## service was running before), start it again.
$0 status >/dev/null && $0 restart
# Remember status and be quiet
rc_status
;;
restart|force-reload)
## Stop the service and regardless of whether it was
## running or not, start it again.
$0 stop
$0 start
# Remember status and be quiet
rc_status
;;
reload)
## Like force-reload, but if daemon does not support
## signalling, do nothing (!)
# If it does not support reload:
exit 3
;;
status)
echo -n "Checking for multipathd: "
# Status has a slightly different for the status command:
# 0 - service running
# 1 - service dead, but /var/run/ pid file exists
# 2 - service dead, but /var/lock/ lock file exists
# 3 - service not running
if [ -f $PIDFILE ]; then
PID="$(cat $PIDFILE)"
PROCNAME="$(ps -o cmd --no-headers $PID)"
if [ "$PROCNAME" == "$DAEMON" ]; then
(exit 0)
else
(exit 1)
fi
else
(exit 3)
fi
rc_status -v
;;
probe)
## Optional: Probe for the necessity of a reload,
## give out the argument which is required for a reload.
;;
*)
echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}"
exit 1
;;
esac
rc_exit

0
ready Normal file
View File