Comment 26 for bug 593086

Revision history for this message
Phillip Susi (psusi) wrote : Re: Silent wraparound on > 2 TB LVM snapshots

After discussing it on <email address hidden>, I believe the issue has been found. There was a patch in 2.6.32 that caused this breakage, and was later fixed. The broken patch ended up in Ubuntu Lucid and Karmic kernels. This probably should be corrected with an SRU. From the mailing list discussion Mikulas Patocka wrote:

The bug existed even in upstream, but only in 2.6.32 kernel. The reason
was this function:
static inline chunk_t sector_to_chunk(struct dm_exception_store *store,
                                      sector_t sector)
{
        return (sector & ~store->chunk_mask) >> store->chunk_shift;
}

"store->chunk_mask" was changed to be unsigned in 2.6.32, so it was
masking the sector with 32-bit value. In 2.6.33 that masking was removed.
Ubuntu picked that 2.6.32 patch but didn't pick further patches.