On Tue, Mar 24, 2020 at 06:53:09PM +0800, Qu Wenruo wrote: > This patchset can be fetched from github: > https://github.com/adam900710/btrfs-progs/tree/valgrind_fixes > > Inspired by that long-existing-but-I-can't-reproduce v5.1 bug, I will > never trust D=asan/D=uban anymore, and run valgrind on all fsck-tests. > > The patchset is the result from the latest valgrind runs. > > The first patch is to make "make INSTRUMENT=valgrind test-fsck" run > smoothly without false alerts due to mount/umount failure with valgrind. Thanks, that's great. In addition to that, all commands that use the SUDO_HELPER/root_helper won't pass through valgrind. For maximum coverage we might want to remove the helper from the subcommands of 'btrfs'. From a quick scan I found a lot of them and I'm not sure that all are required. There's a lot of copy&paste in the tests, so that would have to be cleaned up, or we leave it as it is and run the whole tests under root. > With this patchset applied (along with that fix for v5.1), fsck tests > all passes without valgrind error except mentioned fsck/012 above. > > Qu Wenruo (6): > btrfs-progs: tests/common: Don't call INSTRUMENT on mount command > btrfs-progs: check/original: Fix uninitialized stack memory access for > deal_root_from_list() > btrfs-progs: check/original: Fix uninitialized memory for newly > allocated data_backref > btrfs-progs: check/original: Fix uninitialized return value from > btrfs_write_dirty_block_groups() > btrfs-progs: check/original: Fix uninitialized extent buffer contents > btrfs-progs: extent-tree: Fix wrong post order rb tree cleanup for > block groups Added to devel.
