summaryrefslogtreecommitdiff
path: root/fs/bcachefs/fs-io.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2023-06-21 02:55:13 -0400
committerKent Overstreet <kent.overstreet@linux.dev>2023-06-21 03:28:19 -0400
commitfaa974df646ce2a4b3b328ac91731524d107cc90 (patch)
tree20822da3b0e1c31cb2d9279e94dafd0f7b99317d /fs/bcachefs/fs-io.c
parente86999fe02e3cb66a43de11ef24b77c1e3df1289 (diff)
bcachefs: fixups for 6.5bcachefs-for-upstream-merged-next
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/fs-io.c')
-rw-r--r--fs/bcachefs/fs-io.c16
1 files changed, 2 insertions, 14 deletions
diff --git a/fs/bcachefs/fs-io.c b/fs/bcachefs/fs-io.c
index a27f3749df5a..c7b70e1677e3 100644
--- a/fs/bcachefs/fs-io.c
+++ b/fs/bcachefs/fs-io.c
@@ -2497,12 +2497,7 @@ static __always_inline void bch2_dio_write_end(struct dio_write *dio)
mutex_unlock(&inode->ei_quota_lock);
}
- if (likely(!bio_flagged(bio, BIO_NO_PAGE_REF))) {
- struct folio_iter fi;
-
- bio_for_each_folio_all(fi, bio)
- folio_put(fi.folio);
- }
+ bio_release_pages(bio, false);
if (unlikely(dio->op.error))
set_bit(EI_INODE_ERROR, &inode->ei_flags);
@@ -2621,12 +2616,7 @@ out:
err:
dio->op.error = ret;
- if (!bio_flagged(bio, BIO_NO_PAGE_REF)) {
- struct folio_iter fi;
-
- bio_for_each_folio_all(fi, bio)
- folio_put(fi.folio);
- }
+ bio_release_pages(bio, false);
bch2_quota_reservation_put(c, inode, &dio->quota_res);
goto out;
@@ -2752,7 +2742,6 @@ ssize_t bch2_write_iter(struct kiocb *iocb, struct iov_iter *from)
}
/* We can write back this queue in page reclaim */
- current->backing_dev_info = inode_to_bdi(&inode->v);
inode_lock(&inode->v);
ret = generic_write_checks(iocb, from);
@@ -2772,7 +2761,6 @@ ssize_t bch2_write_iter(struct kiocb *iocb, struct iov_iter *from)
iocb->ki_pos += ret;
unlock:
inode_unlock(&inode->v);
- current->backing_dev_info = NULL;
if (ret > 0)
ret = generic_write_sync(iocb, ret);