Skip to content

hreinecke/multipath-tools

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code
This branch is 225 commits behind opensvc:master.

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

basic-build-and-ci compile and unit test on native arch compile and unit test on foreign arch

multipath-tools for Linux

https://github.com/opensvc/multipath-tools

This package provides the following binaries to drive the Device Mapper multipathing driver:

  • multipath - Device mapper target autoconfig.
  • multipathd - Multipath daemon.
  • mpathpersist - Manages SCSI persistent reservations on dm multipath devices.
  • kpartx - Create device maps from partition tables.

Releases

To get a specific X.Y.Z release, use one of the following method:

Git

git clone https://github.com/opensvc/multipath-tools.git
cd multipath-tools
git tag
git archive --format=tar.gz --prefix=multipath-tools-X.Y.Z/ X.Y.Z > ../multipath-tools-X.Y.Z.tar.gz

Direct download

wget "https://github.com/opensvc/multipath-tools/archive/X.Y.Z.tar.gz" -O multipath-tools-X.Y.Z.tar.gz

Browser

Go to: https://github.com/opensvc/multipath-tools/tags Select a release-tag and then click on "zip" or "tar.gz".

Source code

To get latest devel code:

git clone https://github.com/opensvc/multipath-tools.git

Github page: https://github.com/opensvc/multipath-tools

Building multipath-tools

Prerequisites: development packages of for libdevmapper, libreadline, libaio, libudev, libjson-c, liburcu, and libsystemd.

To build multipath-tools, type:

make
make DESTDIR="/my/target/dir" install

To uninstall, type:

make uninstall

Customizing the build

The following variables can be passed to the make command line:

  • plugindir="/some/path": directory where libmultipath plugins (path checkers, prioritizers, and foreign multipath support) will be looked up. This used to be the run-time option multipath_dir in earlier versions.
  • configdir="/some/path" : directory to search for configuration files. This used to be the run-time option config_dir in earlier versions. The default is /etc/multipath/conf.d.
  • ENABLE_LIBDMMP=0: disable building libdmmp
  • ENABLE_DMEVENTS_POLL=0: disable support for the device-mapper event polling API. For use with pre-5.0 kernels that don't support dmevent polling (but even if you don't use this option, multipath-tools will work with these kernels).
  • SCSI_DH_MODULES_PRELOAD="(list)": specify a space-separated list of SCSI device handler kernel modules to load early during boot. Some multipath-tools functionality depends on these modules being loaded early. This option causes a modules-load.d(5) configuration file to be created, thus it depends on functionality provided by systemd. This variable only matters for make install.

Note: The usefulness of the preload list depends on the kernel configuration. It's especially useful if scsi_mod is builtin but scsi_dh_alua and other device handler modules are built as modules. If scsi_mod itself is compiled as a module, it might make more sense to use a module softdep for the same purpose.

See Makefile.inc for additional variables to customize paths and compiler flags.

Special Makefile targets

The following targets are intended for developers only.

  • make test to build and run the unit tests
  • make valgrind-test to run the unit tests under valgrind
  • make abi to create an XML representation of the ABI of the libraries in the abi/ subdirectory
  • make abi-test to compare the ABI of a different multipath-tools version, which must be stored in the reference-abi/ subdirectory. If this test fails, the ABI has changed wrt the reference.
  • make compile-commands.json to create input for clangd.

Add storage devices

Follow the instructions in the libmultipath/hwtable.c header.

Mailing list

(subscribers-only) To subscribe and archives: https://www.redhat.com/mailman/listinfo/dm-devel Searchable: https://marc.info/?l=dm-devel

Changelog

pre-0.4.5: https://web.archive.org/web/20070309224034/http://christophe.varoqui.free.fr/wiki/wakka.php?wiki=ChangeLog post-0.4.5: https://github.com/opensvc/multipath-tools/commits/master

Maintainer

Christophe Varoqui christophe.varoqui@opensvc.com Device-mapper development mailing list dm-devel@redhat.com

Licence

The multipath-tools source code is covered by several different licences. Refer to the individual source files for details. Source files which do not specify a licence are shipped under LGPL-2.0 (see LICENSES/LGPL-2.0).

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 86.9%
  • Roff 7.6%
  • Perl 3.2%
  • Makefile 1.7%
  • Shell 0.6%