Bug 1515109

Summary: cache_restore tool may corrupt cache metadata [rhel-7.4.z]
Product: Red Hat Enterprise Linux 7 Reporter: Oneata Mircea Teodor <toneata>
Component: device-mapper-persistent-dataAssignee: Marian Csontos <mcsontos>
Status: CLOSED ERRATA QA Contact: Jakub Krysl <jkrysl>
Severity: high Docs Contact: Apurva Bhide <abhide>
Priority: high    
Version: 7.5CC: abhide, agk, heinzm, jkrysl, lmiksik, lvm-team, mcsontos, msnitzer, rhandlin, thornber
Target Milestone: rcKeywords: ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: device-mapper-persistent-data-0.7.0-0.1.rc6.el7_4.1 Doc Type: Bug Fix
Doc Text:
Previously, the cache_restore utility passed incorrect arguments to a function. Additionally, it missed a call to flush dirty bits when version 2 metadata of the cache was used. As a consequence, the utility corrupted the cache metadata. With this update, cache_restore now handles the arguments correctly and adds the missing call. As a result, the utility no longer corrupts version 2 metadata.
Story Points: ---
Clone Of: 1512844 Environment:
Last Closed: 2018-01-25 11:40:38 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1512844    
Bug Blocks:    

Description Oneata Mircea Teodor 2017-11-20 07:26:30 UTC
This bug has been copied from bug #1512844 and has been proposed to be backported to 7.4 z-stream (EUS).

Comment 3 Jakub Krysl 2017-11-20 13:30:32 UTC
before:
# cache_restore -V
0.7.0-0.1.rc6.el7
# cache_restore -i metadata -o /dev/mapper/vgtest-swapvol --debug-override-metadata-version 2
cache_restore: /usr/include/boost/optional/optional.hpp:631: boost::optional<T>::reference_type boost::optional<T>::get() [with T = long unsigned int; boost::optional<T>::reference_type = long unsigned int&]: Assertion `this->is_initialized()' failed.
Aborted (core dumped)

with this patch:
# cache_restore -V
0.7.0-0.1.rc6.el7_4.1
# cache_restore -i metadata -o /dev/mapper/vgtest-swapvol --debug-override-metadata-version 2
Restoring: [==================================================]   100%

Comment 6 errata-xmlrpc 2018-01-25 11:40:38 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:0143