From ef6ad32a32fa073cda8243246d591aa8c814c7d3 Mon Sep 17 00:00:00 2001 From: corwin Date: Fri, 5 Oct 2018 17:48:35 -0400 Subject: [PATCH] Version 6.1.0.187 - Fixed a hang when recovering a VDO volume with a physical size larger than 16TB. --- kvdo.spec | 6 +++--- vdo/Makefile | 2 +- vdo/base/blockMapRecovery.c | 7 ++++--- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/kvdo.spec b/kvdo.spec index 8c3b771b..079e2c1a 100644 --- a/kvdo.spec +++ b/kvdo.spec @@ -1,7 +1,7 @@ %define spec_release 1 %define kmod_name kvdo -%define kmod_driver_version 6.1.0.185 +%define kmod_driver_version 6.1.0.187 %define kmod_rpm_release %{spec_release} %define kmod_kernel_version 3.10.0-693.el7 %define kmod_headers_version %(rpm -qa kernel-devel | sed 's/^kernel-devel-//') @@ -196,5 +196,5 @@ install -m 644 -D $PWD/obj/%{kmod_kbuild_dir}/Module.symvers $RPM_BUILD_ROOT/usr rm -rf $RPM_BUILD_ROOT %changelog -* Wed Sep 05 2018 - J. corwin Coburn - 6.1.0.185-1 -HASH(0x1a519e0) \ No newline at end of file +* Fri Oct 05 2018 - J. corwin Coburn - 6.1.0.187-1 +HASH(0x1b6f9e0) \ No newline at end of file diff --git a/vdo/Makefile b/vdo/Makefile index 43ad5231..7cc421e7 100644 --- a/vdo/Makefile +++ b/vdo/Makefile @@ -1,4 +1,4 @@ -VDO_VERSION = 6.1.0.185 +VDO_VERSION = 6.1.0.187 VDO_VERSION_MAJOR = $(word 1,$(subst ., ,$(VDO_VERSION))) VDO_VERSION_MINOR = $(word 2,$(subst ., ,$(VDO_VERSION))) diff --git a/vdo/base/blockMapRecovery.c b/vdo/base/blockMapRecovery.c index 8e76087e..aa5adc3e 100644 --- a/vdo/base/blockMapRecovery.c +++ b/vdo/base/blockMapRecovery.c @@ -16,7 +16,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA * 02110-1301, USA. * - * $Id: //eng/vdo-releases/magnesium-rhel7.5/src/c++/vdo/base/blockMapRecovery.c#1 $ + * $Id: //eng/vdo-releases/magnesium-rhel7.5/src/c++/vdo/base/blockMapRecovery.c#2 $ */ #include "blockMapRecovery.h" @@ -392,13 +392,14 @@ static void fetchPage(BlockMapRecoveryCompletion *recovery, } // Fetch the next page we haven't yet requested. - PageNumber newPageNumber = recovery->currentUnfetchedEntry->blockMapSlot.pbn; + PhysicalBlockNumber newPBN + = recovery->currentUnfetchedEntry->blockMapSlot.pbn; recovery->currentUnfetchedEntry = findEntryStartingNextPage(recovery, recovery->currentUnfetchedEntry, true); initVDOPageCompletion(((VDOPageCompletion *) completion), recovery->blockMap->zones[0].pageCache, - newPageNumber, true, &recovery->completion, + newPBN, true, &recovery->completion, pageLoaded, handlePageLoadError); recovery->outstanding++; getVDOPageAsync(completion);