Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump version #27

Merged
merged 48 commits into from Feb 22, 2022
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
6afb78f
multipathd.service: remove LimitCORE=infinity directive
mwilck Dec 7, 2021
e90c387
multipathd.service: don't load SCSI device handler modules
mwilck Dec 7, 2021
11f0440
multipathd.service: add dependency on initrd-cleanup.service
mwilck Dec 7, 2021
7b251a0
multipathd.service: drop dependencies on iscsi and iscsid
mwilck Dec 7, 2021
cc18bab
libmultipath: embed dm_info in multipath structure
bmarzins Dec 15, 2021
67c86ad
multipathd: update dm_info on multipath change events
bmarzins Dec 15, 2021
6e40bf9
multipathd: avoid unnecessary path read-only reloads
bmarzins Dec 15, 2021
54e7ed6
libmpathpersist: split public and internal API
mwilck Dec 15, 2021
2f7fc4f
multipathd: remove duplicate definitions from main.h
mwilck Dec 16, 2021
ac8da60
libmpathpersist/multipathd: remove duplicate definition
mwilck Dec 16, 2021
e179cb8
libmpathpersist: remove __STDC_FORMAT_MACROS
mwilck Dec 16, 2021
e608144
libmpathpersist: cleanup mpathpr.h
mwilck Dec 16, 2021
69d5e81
multipath-tools: fix misspellings
xosevp Dec 18, 2021
1834dc4
libmultipath: fix DI_NOIO pathinfo PATH_PENDING handling
bmarzins Dec 23, 2021
5c88969
libmultipath: simplify out __set_no_path_retry()
bmarzins Dec 23, 2021
7278108
libmultipath: don't enter recovery mode with pending paths
bmarzins Dec 23, 2021
dd6338d
libmultipath.version: bump major version
mwilck Dec 23, 2021
a220dd1
build: don't compress man pages
thesamesam Jan 3, 2022
c54d933
multipath-tools: remove duplicate headers
xosevp Jan 4, 2022
2316566
kpartx/devmapper.c: fix unused-but-set variable error
trofi Jan 9, 2022
be16f42
kpartx/devmapper.c: fix unused variable error
trofi Jan 9, 2022
921fabd
multipath-tools: autodiscover libdevmapper.h headers
trofi Jan 9, 2022
1017d59
multipath-tools: autodiscover libudev.h headers
trofi Jan 9, 2022
193455b
multipath-tools: allow passing non-standard linux-headers location
trofi Jan 9, 2022
02bc889
multipath-tools: avoid using GZIP Makefile variable
trofi Jan 9, 2022
353419e
libmultipath: fix disassemble status for historical-service-time PS
bmarzins Jan 18, 2022
ad16d0b
libmultipath: make helper function to trigger path uevents
bmarzins Jan 18, 2022
9b634e8
multipathd: trigger udev change on path addition
bmarzins Jan 18, 2022
378932f
libmultipath: use asprintf() to allocate prefixed_uuid
bmarzins Jan 26, 2022
1ef4541
multipath/Makefile: use $(udevrulesdir)
mwilck Feb 1, 2022
41d0b66
multipath-tools: Makefile.inc: delete obsolete comment
mwilck Feb 1, 2022
92f0893
multipath-tools: install modules-load.d/multipath.conf
mwilck Feb 1, 2022
a1eabea
multipathd.service: drop ExecStartPre for loading dm-multipath
mwilck Feb 1, 2022
2159f76
multipath: Makefile: modules-load.d file for SCSI device handlers
mwilck Feb 1, 2022
5e5e51c
README.md: add basic information about building multipath-tools
mwilck Feb 1, 2022
544c4f4
libmultipath: hwtable: use ALUA for all LIO targets
mwilck Feb 2, 2022
4f50e0e
kpartx.rules: skip MD devices
mwilck Feb 7, 2022
cfff03e
multipathd: handle fpin events
muneendramandala Feb 10, 2022
3af023b
multipathd: disallow changing to/from fpin marginal paths on reconfig
bmarzins Feb 14, 2022
852a1df
libmultipath: support host adapter name lookup for s390x ccw bus
steffen-maier Feb 15, 2022
260d7cb
libmultipath: add %L path wildcard for 64-bit hex LUN
steffen-maier Feb 15, 2022
1a2f329
libmultipath: fix printing native nvme multipath topology.
bmarzins Feb 16, 2022
d11793a
Add missing include <assert.h>
Uglymotha Jan 8, 2022
571f28b
libmultipath: enable linear ordering of bus/proto tuple
mwilck Feb 17, 2022
28fcf23
libmultipath: use bus_protocol_id() in snprint_path_protocol()
mwilck Feb 17, 2022
6ae1b0c
libmultipath: enable defining a static bitfield
mwilck Feb 17, 2022
ac61ccc
libmultipath: only warn once about unsupported dev_loss_tmo
mwilck Feb 17, 2022
fc87ba4
Bump version to 0.8.9
mwilck Feb 16, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Prev Previous commit
Next Next commit
multipath-tools: fix misspellings
Cc: Martin Wilck <mwilck@suse.com>
Cc: Benjamin Marzinski <bmarzins@redhat.com>
Cc: Christophe Varoqui <christophe.varoqui@opensvc.com>
Cc: DM-DEVEL ML <dm-devel@redhat.com>
Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
Signed-off-by: Martin Wilck <mwilck@suse.com>
Reviewed-by: Martin Wilck <mwilck@suse.com>
  • Loading branch information
xosevp authored and mwilck committed Dec 20, 2021
commit 69d5e814022eff674e6fe7fe020bf8dc29e25242
2 changes: 1 addition & 1 deletion kpartx/crc32.c
Expand Up @@ -342,7 +342,7 @@ uint32_t attribute((pure)) crc32_be(uint32_t crc, unsigned char const *p, size_t
* but again the multiple of the polynomial to subtract depends only on
* the high bits, the high 8 bits in this case.
*
* The multile we need in that case is the low 32 bits of a 40-bit
* The multiple we need in that case is the low 32 bits of a 40-bit
* value whose high 8 bits are given, and which is a multiple of the
* generator polynomial. This is simply the CRC-32 of the given
* one-byte message.
Expand Down
2 changes: 1 addition & 1 deletion kpartx/gpt.c
Expand Up @@ -94,7 +94,7 @@ efi_crc32(const void *buf, unsigned long len)
*
* Description: Returns 1 if PMBR is valid, 0 otherwise.
* Validity depends on two things:
* 1) MSDOS signature is in the last two bytes of the MBR
* 1) MS-DOS signature is in the last two bytes of the MBR
* 2) One partition of type 0xEE is found
*/
static int
Expand Down
2 changes: 1 addition & 1 deletion libdmmp/libdmmp.c
Expand Up @@ -189,7 +189,7 @@ int dmmp_mpath_array_get(struct dmmp_context *ctx,
j_token = json_tokener_new();
if (j_token == NULL) {
rc = DMMP_ERR_BUG;
_error(ctx, "BUG: json_tokener_new() retuned NULL");
_error(ctx, "BUG: json_tokener_new() returned NULL");
goto out;
}
j_obj = json_tokener_parse_ex(j_token, j_str, strlen(j_str) + 1);
Expand Down
2 changes: 1 addition & 1 deletion libmpathcmd/mpath_cmd.h
Expand Up @@ -80,7 +80,7 @@ int mpath_disconnect(int fd);
* mpath_recv_reply()
*
* RETURNS:
* 0 on successs, and reply will either be NULL (if there was no
* 0 on success, and reply will either be NULL (if there was no
* reply data), or point to the reply string, which must be freed by
* the caller. -1 on failure (with errno set).
*/
Expand Down
2 changes: 1 addition & 1 deletion libmpathpersist/mpath_persist.h
Expand Up @@ -77,7 +77,7 @@ extern "C" {
#define MPATH_PROTOCOL_ID_SAS 0x06


/*Transport ID FORMATE CODE */
/*Transport ID FORMAT CODE */
#define MPATH_WWUI_DEVICE_NAME 0x00 /* World wide unique initiator device name */
#define MPATH_WWUI_PORT_IDENTIFIER 0x40 /* World wide unique initiator port identifier */

Expand Down
2 changes: 1 addition & 1 deletion libmpathpersist/mpath_persist_int.c
Expand Up @@ -546,7 +546,7 @@ static int mpath_prout_rel(struct multipath *mpp,int rq_servact, int rq_scope,
condlog (2, "%s: Path holding reservation is released.", mpp->wwid);
return MPATH_PR_SUCCESS;
}
condlog (2, "%s: Path holding reservation is not avialable.", mpp->wwid);
condlog (2, "%s: Path holding reservation is not available.", mpp->wwid);

pr_buff = mpath_alloc_prin_response(MPATH_PRIN_RFSTAT_SA);
if (!pr_buff){
Expand Down
6 changes: 3 additions & 3 deletions libmpathvalid/mpath_valid.h
Expand Up @@ -83,7 +83,7 @@ int mpathvalid_init(int verbosity, int log_style);

/*
* DESCRIPTION:
* Reread the multipath configuration files and reinitalize
* Reread the multipath configuration files and reinitialize
* the device mapper multipath configuration. This function can
* be called as many times as necessary.
*
Expand All @@ -95,8 +95,8 @@ int mpathvalid_reload_config(void);
/*
* DESCRIPTION:
* Release the device mapper multipath configuration. This
* function must be called to cleanup resoures allocated by
* mpathvalid_init(). After calling this function, no futher
* function must be called to cleanup resources allocated by
* mpathvalid_init(). After calling this function, no further
* libmpathvalid functions may be called.
*
* RETURNS: 0 = Success, -1 = Failure
Expand Down
2 changes: 1 addition & 1 deletion libmultipath/Makefile
Expand Up @@ -61,7 +61,7 @@ nvme-lib.o: nvme-lib.c nvme-ioctl.c nvme-ioctl.h
$(CC) $(CFLAGS) -Wno-unused-function -c -o $@ $<

# there are lots of "unused parameters" in dict.c
# because not all handler / snprint methods nees all parameters
# because not all handler / snprint methods need all parameters
dict.o: dict.c
$(CC) $(CFLAGS) -Wno-unused-parameter -c -o $@ $<

Expand Down
2 changes: 1 addition & 1 deletion libmultipath/checkers.h
Expand Up @@ -156,7 +156,7 @@ void checker_disable (struct checker *);
*
* Rationale:
* Path checkers that do I/O may hang forever. To avoid blocking, some
* checkers therefore use asyncronous, detached threads for checking
* checkers therefore use asynchronous, detached threads for checking
* the paths. These threads may continue hanging if multipathd is stopped.
* In this case, we can't unload the checker DSO at exit. In order to
* avoid race conditions and crashes, the entry point of the thread
Expand Down
2 changes: 1 addition & 1 deletion libmultipath/checkers/directio.c
Expand Up @@ -23,7 +23,7 @@

/* Note: This checker type relies on the fact that only one checker can be run
* at a time, since multiple checkers share the same aio_group, and must be
* able to modify other checker's async_reqs. If multple checkers become able
* able to modify other checker's async_reqs. If multiple checkers become able
* to be run at the same time, this checker will need to add locking, and
* probably polling on event fds, to deal with that */

Expand Down
2 changes: 1 addition & 1 deletion libmultipath/dmparser.c
Expand Up @@ -102,7 +102,7 @@ int assemble_map(struct multipath *mp, char **params)
}

/*
* Caution callers: If this function encounters yet unkown path devices, it
* Caution callers: If this function encounters yet unknown path devices, it
* adds them uninitialized to the mpp.
* Call update_pathvec_from_dm() after this function to make sure
* all data structures are in a sane state.
Expand Down
2 changes: 1 addition & 1 deletion libmultipath/foreign.h
Expand Up @@ -42,7 +42,7 @@ struct foreign {
/**
* method: init(api, name)
* Initialize foreign library, and check API compatibility
* return pointer to opaque internal data strucure if successful,
* return pointer to opaque internal data structure if successful,
* NULL otherwise.
*
* @param[in] api: API version
Expand Down
2 changes: 1 addition & 1 deletion libmultipath/prioritizers/alua_spc3.h
Expand Up @@ -286,7 +286,7 @@ struct rtpg_tp_dscr {
struct rtpg_tpg_dscr {
unsigned char b0; /* x....... = pref(ered) port */
/* .xxx.... = reserved */
/* ....xxxx = asymetric access state */
/* ....xxxx = asymmetric access state*/
unsigned char b1; /* xxx..... = reserved */
/* ...x.... = LBA dependent support */
/* ....x... = unavailable support */
Expand Down
2 changes: 1 addition & 1 deletion libmultipath/prioritizers/path_latency.c
Expand Up @@ -284,7 +284,7 @@ int getprio(struct path *pp, char *args, unsigned int timeout)

if (lg_avglatency > lg_maxavglatency) {
pp_pl_log(2,
"%s: average latency (%lld us) is outside the thresold (%lld us)",
"%s: average latency (%lld us) is outside the threshold (%lld us)",
pp->dev, (long long)pow(base_num, lg_avglatency),
(long long)MAX_AVG_LATENCY);
return DEFAULT_PRIORITY;
Expand Down
2 changes: 1 addition & 1 deletion libmultipath/uevent.c
Expand Up @@ -292,7 +292,7 @@ static bool
uevent_can_merge(struct uevent *earlier, struct uevent *later)
{
/* merge paths uevents
* whose wwids exsit and are same
* whose wwids exist and are same
* and actions are same,
* and actions are addition or deletion
*/
Expand Down
18 changes: 9 additions & 9 deletions multipath/multipath.conf.5
Expand Up @@ -251,7 +251,7 @@ The default is: \fBfailover\fR
.B uid_attrs
.
Setting this option activates \fBmerging uevents\fR by WWID, which may improve
uevent processing effiency. Moreover, it's an alternative method to configure
uevent processing efficiency. Moreover, it's an alternative method to configure
the udev properties to use for determining unique path identifiers (WWIDs).
.RS
.PP
Expand Down Expand Up @@ -587,7 +587,7 @@ and multipathd. This is equivalent to ulimit \-n. A value of \fImax\fR will set
this to the system limit from \fI/proc/sys/fs/nr_open\fR. If this is not set, the
maximum number of open fds is taken from the calling process. It is usually
1024. To be safe, this should be set to the maximum number of paths plus 32,
if that number is greated than 1024.
if that number is greater than 1024.
.RS
.TP
The default is: \fBmax\fR
Expand Down Expand Up @@ -830,7 +830,7 @@ The default is: \fBno\fR
.I yes
and the SCSI layer has already attached a hardware_handler to the device,
multipath will not force the device to use the hardware_handler specified by
mutipath.conf. If the SCSI layer has not attached a hardware handler,
multipath.conf. If the SCSI layer has not attached a hardware handler,
multipath will continue to use its configured hardware handler.
.RS
.PP
Expand Down Expand Up @@ -1097,8 +1097,8 @@ device is not configured to queue IO in this case, it can cause IO errors to
occur, even though there are marginal paths available. However, if this
option is set to \fIyes\fR, when one of the marginal path detecting methods
determines that a path is marginal, it will be reinstated and placed in a
seperate pathgroup that will only be used after all the non-marginal pathgroups
have been tried first. This prevents the possibility of IO errors occuring
separate pathgroup that will only be used after all the non-marginal pathgroups
have been tried first. This prevents the possibility of IO errors occurring
while marginal paths are still usable. After the path has been monitored
for the configured time, and is declared healthy, it will be returned to its
normal pathgroup. See "Shaky paths detection" below for more information.
Expand Down Expand Up @@ -1140,7 +1140,7 @@ device path.
.I smart
This differs from \fIfind_multipaths yes\fR only in
the way it treats new devices for which only one path has been
detected yet. When such a device is first encounted in udev rules, it is
detected yet. When such a device is first encountered in udev rules, it is
treated as a multipath device. multipathd waits whether additional paths with
the same WWID appears. If that happens, it sets up a multipath map. If it
doesn\'t happen until a
Expand Down Expand Up @@ -1420,7 +1420,7 @@ from later entries take precedence.
The \fImultipath\fR subsection recognizes the following attributes:
.TP 17
.B wwid
(Mandatory) World Wide Identifier. Detected multipath maps are matched agains this attribute.
(Mandatory) World Wide Identifier. Detected multipath maps are matched against this attribute.
Note that, unlike the \fIwwid\fR attribute in the \fIblacklist\fR section,
this is \fBnot\fR a regular expression or a substring; WWIDs must match
exactly inside the multipaths section.
Expand Down Expand Up @@ -1547,7 +1547,7 @@ device type, instead of the default "mpath".
The vendor specific vpd page information, using the vpd page abbreviation.
The vpd page abbreviation can be found by running \fIsg_vpd -e\fR. multipathd
will use this information to gather device specific information that can be
displayed with the \fI%g\fR wilcard for the \fImultipathd show maps format\fR
displayed with the \fI%g\fR wildcard for the \fImultipathd show maps format\fR
and \fImultipathd show paths format\fR commands. Currently only the
\fBhp3par\fR vpd page is supported.
.TP
Expand Down Expand Up @@ -1795,7 +1795,7 @@ in most scenarios. Users who want to enable uevent merging must set
.SH "Shaky paths detection"
.\" ----------------------------------------------------------------------------
.
A common problem in SAN setups is the occurence of intermittent errors: a
A common problem in SAN setups is the occurrence of intermittent errors: a
path is unreachable, then reachable again for a short time, disappears again,
and so forth. This happens typically on unstable interconnects. It is
undesirable to switch pathgroups unnecessarily on such frequent, unreliable
Expand Down
2 changes: 1 addition & 1 deletion multipathd/dmevents.c
Expand Up @@ -385,7 +385,7 @@ void *wait_dmevents (__attribute__((unused)) void *unused)


if (!waiter) {
condlog(0, "dmevents waiter not intialized");
condlog(0, "dmevents waiter not initialized");
return NULL;
}

Expand Down
8 changes: 4 additions & 4 deletions multipathd/main.c
Expand Up @@ -1599,7 +1599,7 @@ uev_update_path (struct uevent *uev, struct vectors * vecs)

condlog(0, "%s: spurious uevent, path not found", uev->kernel);
}
/* pp->initalized must not be INIT_PARTIAL if needs_reinit is set */
/* pp->initialized must not be INIT_PARTIAL if needs_reinit is set */
if (needs_reinit)
retval = uev_add_path(uev, vecs, 1);
return retval;
Expand Down Expand Up @@ -1791,7 +1791,7 @@ uxlsnrloop (void * ap)

/*
* Wait for initial reconfiguration to finish, while
* hadling signals
* handling signals
*/
while (wait_for_state_change_if(DAEMON_CONFIGURE, 50)
== DAEMON_CONFIGURE)
Expand Down Expand Up @@ -2107,7 +2107,7 @@ static int check_path_reinstate_state(struct path * pp) {
/*
* This function is only called when the path state changes
* from "bad" to "good". pp->state reflects the *previous* state.
* If this was "bad", we know that a failure must have occured
* If this was "bad", we know that a failure must have occurred
* beforehand, and count that.
* Note that we count path state _changes_ this way. If a path
* remains in "bad" state, failure count is not increased.
Expand Down Expand Up @@ -2277,7 +2277,7 @@ check_path (struct vectors * vecs, struct path * pp, unsigned int ticks)

/*
* provision a next check soonest,
* in case we exit abnormaly from here
* in case we exit abnormally from here
*/
pp->tick = checkint;

Expand Down
2 changes: 1 addition & 1 deletion multipathd/main.h
Expand Up @@ -17,7 +17,7 @@ enum remove_path_result {
REMOVE_PATH_FAILURE = 0x0, /* path could not be removed. It is still
* part of the kernel map, but its state
* is set to INIT_REMOVED, and it will be
* removed at the next possible occassion */
* removed at the next possible occasion */
REMOVE_PATH_SUCCESS = 0x1, /* path was removed */
REMOVE_PATH_DELAY = 0x2, /* path is set to be removed later. it
* currently still exists and is part of the
Expand Down
2 changes: 1 addition & 1 deletion multipathd/multipathd.8
Expand Up @@ -82,7 +82,7 @@ multipathd. See
.B \-w
Since kernel 4.14 a new device-mapper event polling interface is used for updating
multipath devices on dmevents. Use this flag to force it to use the old event
waiting method, based on creating a seperate thread for each device.
waiting method, based on creating a separate thread for each device.
.
.
.
Expand Down
2 changes: 1 addition & 1 deletion multipathd/uxlsnr.c
Expand Up @@ -75,7 +75,7 @@ enum {
};

#define POLLFD_CHUNK (4096 / sizeof(struct pollfd))
/* Minimum mumber of pollfds to reserve for clients */
/* Minimum number of pollfds to reserve for clients */
#define MIN_POLLS (POLLFD_CHUNK - POLLFDS_BASE)
/*
* Max number of client connections allowed
Expand Down
2 changes: 1 addition & 1 deletion tests/README.md
Expand Up @@ -38,7 +38,7 @@ device will be opened in read-only mode; you don't need to worry about data
loss. However, the user needs to specify a device to be used. Set the
environment variable `DIO_TEST_DEV` to the path of the device.
Alternatively, create a file `directio_test_dev` under
the `tests` directory containting a single line that sets this environment
the `tests` directory containing a single line that sets this environment
variable in Bourne Shell syntax, like this:

DIO_TEST_DEV=/dev/sdc3
Expand Down
12 changes: 6 additions & 6 deletions tests/hwtable.c
Expand Up @@ -421,7 +421,7 @@ static const struct key_value vnd_boo = { _vendor, "boo" };
static const struct key_value prd_baz = { _product, "baz" };
static const struct key_value wwid_test = { _wwid, default_wwid };

/* Regular expresssions */
/* Regular expressions */
static const struct key_value vnd__oo = { _vendor, ".oo" };
static const struct key_value vnd_t_oo = { _vendor, "^.oo" };
static const struct key_value prd_ba_ = { _product, "ba." };
Expand Down Expand Up @@ -603,7 +603,7 @@ static int setup_internal_nvme(void **state)
}

/*
* Device section with a simple entry qith double quotes ('foo:"bar"')
* Device section with a simple entry with double quotes ('foo:"bar"')
*/
static void test_quoted_hwe(const struct hwt_state *hwt)
{
Expand Down Expand Up @@ -967,7 +967,7 @@ static int setup_string_regex_hwe_dir(void **state)
}

/*
* Two identical device entries kv1 and kv2, trival regex ("string").
* Two identical device entries kv1 and kv2, trivial regex ("string").
* Both are added to the main config file.
* These entries are NOT merged.
* This could happen in a large multipath.conf file.
Expand Down Expand Up @@ -1003,7 +1003,7 @@ static int setup_2_ident_strings_hwe(void **state)
}

/*
* Two identical device entries kv1 and kv2, trival regex ("string").
* Two identical device entries kv1 and kv2, trivial regex ("string").
* Both are added to an extra config file.
* This could happen in a large multipath.conf file.
*
Expand Down Expand Up @@ -1043,7 +1043,7 @@ static int setup_2_ident_strings_both_dir(void **state)
}

/*
* Two identical device entries kv1 and kv2, trival regex ("string").
* Two identical device entries kv1 and kv2, trivial regex ("string").
* Both are added to an extra config file.
* An empty entry kv0 with the same string exists in the main config file.
*
Expand Down Expand Up @@ -1086,7 +1086,7 @@ static int setup_2_ident_strings_both_dir_w_prev(void **state)
}

/*
* Two identical device entries kv1 and kv2, trival regex ("string").
* Two identical device entries kv1 and kv2, trivial regex ("string").
* kv1 is added to the main config file, kv2 to a config_dir file.
* These entries are merged.
* This case is more important as you may think, because it's equivalent
Expand Down