opensvc / multipath-tools

Other
59 stars 47 forks source link

multipath-tools 0.9.6 #68

Closed mwilck closed 1 year ago

mwilck commented 1 year ago

Hi Christophe,

here's a PR for multipath-tools 0.9.6. The main new feature is the group_by_tpg path grouping policy, a feature that multipath-tools has been lacking for a long time.

Other than that, there are just a few bug fixes, build fixes, and minor corrections.

There's one user-visible change: NVMe devices will now be blacklisted by default if NVMe native multipathing is enabled in the kernel.

~A few reviewed-by: tags are still missing, thus I'm submitting this as draft for now.~

Note about ABI: libmultipath ABI is bumped to 20.0 because of the get_prio_timeout() changes. ~as struct config and struct multipath have changed, abigail finds ABI changes in libmpathpersist and libmpathutil. However these structs are never allocated or directly used by either library, so only the ABI version of libmultipath is bumped.~

Martin

@bmarzins(15) libmultipath: add group_by_tpg path_grouping_policy libmultipath: don't copy pgpolicy string in get_pgpolicy_name libmultipath: add ALUA tpg path wildcard multipath-tools tests: add tests for group_by_tpg policy libmultipath: add "detect_pgpolicy" config option libmultipath: add "detect_pgpolicy_use_tpg" config option libmultipath: don't count PRIO_UNDEF paths for pathgroup priority multipath-tools tests: add tests to verify PRIO_UNDEF changes multipathd: only refresh priorities in update_prio() multipathd: reload map if the path groups are out of order multipathd: don't assume mpp->paths will exist in need_switch_pathgroup libmultipath: don't bother to recheck timeout libmultipath: make checker_timeout a path variable libmultipath: make prioritizer timeouts work like checker timeouts libmultipath: standardize datacore prioritizer timeouts

@zeha (1): multipath-tools build: rename PKGCONFIG to PKG_CONFIG

@lamby (1): multipath-tools build: accept KBUILD_BUILD_TIMESTAMP from env

@ldv-alt (2): 11-dm-mpath.rules: fix warnings reported by udevadm verify (fixes #66) dm-parts.rules: fix warning reported by udevadm verify

@ajmes (1): libmultipath: fix max_sectors_kb on adding path (fixes #69)

@mwilck (8): libmultipath: dm_get_maps(): remove spurious assignment libmultipath: fix dev_loss_tmo even if not set in configuration libmultipath: ignore nvme devices if nvme native multipath is enabled GitHub workflows: enable Debian "bookworm" GitHub workflows: use Fedora 37 in native.yaml GitHub workflows: switch to Ubuntu 22.04 runner libmultipath: bump version to 0.9.6 Fix hwtable test after "libmultipath: don't bother to recheck timeout"

@xosevp (5): multipath-tools: adapt HITACHI/OPEN- config to work with alua and multibus multipath-tools: fix spelling multipath-tools: fix syntax and spelling errors multipath-tools: fix docs multipath-tools: treat disable_changed_wwids like other deprecated keywords

mwilck commented 1 year ago

Re-pushed and marked as ready for review. Missing Reviewed-by: tags are added (as usual, except for the workflow stuff).

mwilck commented 1 year ago

@bmarzins, could you please ack this? I would like to push your prioritizer timeout series to the queue branch but that needs to happen after this is merged (not 0.9.6 material IMO).

@cvaroqui, I'd be grateful if we could make progress here.

mwilck commented 1 year ago

Thanks, @cvaroqui!

I realize that I had pushed my "queue" branch by mistake, including the late prio timeout series from @bmarzins, which I'd originally considered to be post-0.9.6 material. I don't think it's a problem though, the patches are sound and have been reviewed. It's probably a good thing to have them in this release.

But this means that the shortlog above is incomplete. I'll modify it to reflect the actual changes.