Bug 203573 - bcache consistently corrupts filesystem beyond repair
Summary: bcache consistently corrupts filesystem beyond repair
Status: NEW
Alias: None
Product: IO/Storage
Classification: Unclassified
Component: Other (show other bugs)
Hardware: x86-64 Linux
: P1 blocking
Assignee: io_other
URL: https://bugzilla.redhat.com/show_bug....
Depends on:
Reported: 2019-05-11 08:01 UTC by Rolf Fokkens
Modified: 2019-05-24 08:37 UTC (History)
12 users (show)

See Also:
Kernel Version: 5.0.11
Tree: Mainline
Regression: No


Description Rolf Fokkens 2019-05-11 08:01:35 UTC
Upgrading a Fedora system using bcache to Fedora 30 results in massive filestem corruption. This is caused specifically caused by kernels built for Fedora 30, while the same kernels built for Fedora 29 work just fine.

A notable difference between Fedora 29 and Fedora 30 is the fact that Fedora 29 uses gcc8 and Fedora uses gcc9.
Comment 1 Rolf Fokkens 2019-05-11 08:03:20 UTC
More details can be found in the linked Fedora bug report.
Comment 2 Pierre Juhen 2019-05-12 06:57:27 UTC
Same issue for me.
Comment 3 Fredrik Chabot 2019-05-14 08:10:08 UTC
I can confirm this issue
Comment 4 Pierre Juhen 2019-05-14 09:56:14 UTC
Please look at https://bugzilla.redhat.com/show_bug.cgi?id=1708315 to see the progresses that have been made (Thahks to Rolf).

In summary :

The problem occurs only if the kernel has been compiled with gcc 9.x.y.

The problem doesn't occur in "none" mode, but in writethrough or in writeback mode.

This shows that the frontend metadata is not read properly (driver returns a wrong block if the block data is present in the frontend).
Comment 5 László Szalma 2019-05-24 07:34:09 UTC
I confirm the issue kernel 5.1.3 built with gcc 9.1.0 causes data loss when bcache has cache device. Without attached cache device it works.

Note You need to log in before you can comment on or make changes to this bug.