Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'for-4.17-rc6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux

Pull btrfs fix from David Sterba:
"A one-liner that prevents leaking an internal error value 1 out of the
ftruncate syscall.

This has been observed in practice. The steps to reproduce make a
common pattern (open/write/fync/ftruncate) but also need the
application to not check only for negative values and happens only for
compressed inlined files.

The conditions are narrow but as this could break userspace I think
it's better to merge it now and not wait for the merge window"

* tag 'for-4.17-rc6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
Btrfs: fix error handling in btrfs_truncate()

+2 -1
+2 -1
fs/btrfs/inode.c
··· 9117 9117 BTRFS_EXTENT_DATA_KEY); 9118 9118 trans->block_rsv = &fs_info->trans_block_rsv; 9119 9119 if (ret != -ENOSPC && ret != -EAGAIN) { 9120 - err = ret; 9120 + if (ret < 0) 9121 + err = ret; 9121 9122 break; 9122 9123 } 9123 9124