Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable
* git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: Btrfs: break out of shrink_delalloc earlier btrfs: fix not enough reserved space btrfs: fix dip leak Btrfs: make sure not to return overlapping extents to fiemap Btrfs: deal with short returns from copy_from_user Btrfs: fix regressions in copy_from_user handling
This commit is contained in:
@@ -4821,10 +4821,11 @@ static int btrfs_link(struct dentry *old_dentry, struct inode *dir,
|
||||
goto fail;
|
||||
|
||||
/*
|
||||
* 1 item for inode ref
|
||||
* 2 items for inode and inode ref
|
||||
* 2 items for dir items
|
||||
* 1 item for parent inode
|
||||
*/
|
||||
trans = btrfs_start_transaction(root, 3);
|
||||
trans = btrfs_start_transaction(root, 5);
|
||||
if (IS_ERR(trans)) {
|
||||
err = PTR_ERR(trans);
|
||||
goto fail;
|
||||
@@ -6056,6 +6057,7 @@ static void btrfs_submit_direct(int rw, struct bio *bio, struct inode *inode,
|
||||
if (!skip_sum) {
|
||||
dip->csums = kmalloc(sizeof(u32) * bio->bi_vcnt, GFP_NOFS);
|
||||
if (!dip->csums) {
|
||||
kfree(dip);
|
||||
ret = -ENOMEM;
|
||||
goto free_ordered;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user