On Thu, Sep 29, 2016 at 3:52 PM, Holger Hoffstätte <hol...@applied-asynchrony.com> wrote: > On 09/29/16 14:21, Anatoly Pugachev wrote: >>> ... >>> >>> This is fixed by patch >>> >>> "Btrfs: remove unnecessary btrfs_mark_buffer_dirty in split_leaf" >>> >>> that's in the 4.9 queue. Other than that, the self-tests seem to pass, >>> thanks for the test. Would be good if you can test with the mentioned >>> patch included or without integrity checker. Thanks for testing. >> >> updated git kernel to v4.8-rc8-8-gae6dd8d , applied this >> "Btrfs: free space tree and sanity test fixes" patchset and added/applied >> "Btrfs: remove unnecessary btrfs_mark_buffer_dirty in split_leaf" : >> > (snip) >> Sep 29 00:40:55 ttip kernel: BTRFS: device fsid >> 7bb81df9-0e2b-47f2-81ff-c08502d38da6 devid 1 transid 5 /dev/loop4 >> Sep 29 00:41:30 ttip kernel: BTRFS info (device loop4): disk space caching >> is enabled >> Sep 29 00:41:30 ttip kernel: BTRFS info (device loop4): has skinny extents >> Sep 29 00:41:30 ttip kernel: BTRFS info (device loop4): flagging fs with big >> metadata feature >> Sep 29 00:41:30 ttip kernel: BTRFS info (device loop4): creating UUID tree >> Sep 29 00:41:31 ttip kernel: BTRFS: device fsid >> d0ee7ca3-3be0-465f-857b-19e681181923 devid 1 transid 5 /dev/loop0 >> Sep 29 00:41:32 ttip kernel: BTRFS info (device loop0): enabling free space >> tree >> Sep 29 00:41:32 ttip kernel: BTRFS info (device loop0): using free space tree >> Sep 29 00:41:32 ttip kernel: BTRFS info (device loop0): has skinny extents >> Sep 29 00:41:32 ttip kernel: BTRFS info (device loop0): flagging fs with big >> metadata feature >> Sep 29 00:41:32 ttip kernel: BTRFS info (device loop0): creating free space >> tree >> Sep 29 00:41:32 ttip kernel: BTRFS info (device loop0): setting 1 ro feature >> flag >> Sep 29 00:41:32 ttip kernel: BTRFS info (device loop0): setting 2 ro feature >> flag >> Sep 29 00:41:32 ttip kernel: BTRFS info (device loop0): creating UUID tree >> Sep 29 00:41:32 ttip kernel: BTRFS critical (device loop4): corrupt leaf, >> non-root leaf's nritems is 0: block=29556736,root=1, slot=0 >> Sep 29 00:41:32 ttip kernel: BTRFS info (device loop4): leaf 29556736 total >> ptrs 0 free space 16283 >> Sep 29 00:41:32 ttip kernel: BTRFS: assertion failed: 0, file: >> fs/btrfs/disk-io.c, line: 4059kernel BUG at fs/btrfs/ctree.h:3369! > > Try to add https://patchwork.kernel.org/patch/9332707/ aka > "Btrfs: improve check_node to avoid reading corrupted nodes" which should > return > -EIO and prevent the BUG().
Guys, I was wrong with "Btrfs: remove unnecessary btrfs_mark_buffer_dirty in split_leaf" , because I've used patch from email https://marc.info/?l=linux-btrfs&m=147319873029152&w=2 which patches fs/btrfs/ctree.c , but forgot to apply kdave git kernel commit 1ba98d086fe3a14d6a31f2f66dbab70c45d00f63 "Btrfs: detect corruption when non-root leaf has zero item" :-/ Should I remake all the tests? -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html