Re: [PATCH 5/5] btrfs: ctree: Checking key orders before merged tree blocks

2019-07-24 Thread David Sterba
On Wed, Jul 10, 2019 at 03:12:37PM +0300, Nikolay Borisov wrote: > On 10.07.19 г. 15:02 ч., Qu Wenruo wrote: > > On 2019/7/10 下午7:19, Nikolay Borisov wrote: > >> nit: I wonder if it will make it a bit easier to reason about the code > >> if that function is renamed to valid_cross_block_key_order an

Re: [PATCH 5/5] btrfs: ctree: Checking key orders before merged tree blocks

2019-07-10 Thread Nikolay Borisov
On 10.07.19 г. 15:02 ч., Qu Wenruo wrote: > > > On 2019/7/10 下午7:19, Nikolay Borisov wrote: >> >> > [...] >>> +static int check_cross_tree_key_order(struct extent_buffer *left, >>> + struct extent_buffer *right) >>> +{ >>> + struct btrfs_key left_last; >>> +

Re: [PATCH 5/5] btrfs: ctree: Checking key orders before merged tree blocks

2019-07-10 Thread Qu Wenruo
On 2019/7/10 下午7:19, Nikolay Borisov wrote: > > [...] >> +static int check_cross_tree_key_order(struct extent_buffer *left, >> + struct extent_buffer *right) >> +{ >> +struct btrfs_key left_last; >> +struct btrfs_key right_first; >> +int level = btrfs

Re: [PATCH 5/5] btrfs: ctree: Checking key orders before merged tree blocks

2019-07-10 Thread Nikolay Borisov
On 10.07.19 г. 11:02 ч., Qu Wenruo wrote: > [BUG] > With crafted image, btrfs can panic at btrfs_del_csums(). > kernel BUG at fs/btrfs/ctree.c:3188! > invalid opcode: [#1] SMP PTI > CPU: 0 PID: 1156 Comm: btrfs-transacti Not tainted 5.0.0-rc8+ #9 > RIP: 0010:btrfs_set_item_key_safe+