Bug 2166131

Summary: Read-only rebuild will incorrectly rebuild reference counts if the logical size is an exact multiple of 821 4K blocks
Product: Red Hat Enterprise Linux 8 Reporter: corwin <corwin>
Component: kmod-kvdoAssignee: corwin <corwin>
Status: CLOSED ERRATA QA Contact: Filip Suba <fsuba>
Severity: high Docs Contact:
Priority: high    
Version: ---CC: awalsh, cwei, fsuba, pasik, slegendr
Target Milestone: rcKeywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: kmod-kvdo-6.2.8.7-88.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 2166132 (view as bug list) Environment:
Last Closed: 2023-05-16 09:03:20 UTC Type: Bug
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:    
Bug Blocks: 2166132    

Description corwin 2023-01-31 22:00:52 UTC
Description of problem:
If a vdo has a logical size which is an exact multiple of 821 4K blocks, a read-only rebuild will fail to rebuild the reference counts for any of the final 821 logical blocks of the volume.

Version-Release number of selected component (if applicable):


How reproducible:
With certainty.

Steps to Reproduce:
1. Create a vdo volume whose logical size is an exact multiple of 821 4K blocks.
2. Write some non-zero data to (some of) the last 821 blocks of the volume.
3. Stop the device.
4. Run vdoreadonly to but the vdo into read-only mode.
5. Run vdoforcerebuild to request a rebuild on the next start.
6. Start the device.
7. Overwrite the data written in step 2.

Actual results:
The vdo goes into read-only mode with a reference count error.

Expected results:
The vdo continues to function normally.

Additional info:

Comment 4 Filip Suba 2023-02-20 09:31:32 UTC
Verified with kmod-kvdo-6.2.8.7-88.el8.

Comment 6 errata-xmlrpc 2023-05-16 09:03:20 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 (kmod-kvdo bug fix and enhancement update), 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-2023:2957