diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2023-11-23 17:36:29 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2023-11-23 17:36:29 -0800 |
commit | 004442384416cbb3cedf99eb8ab5f10c32e4dd34 (patch) | |
tree | bf95e95053fe7e33033f5c2c597b08dbf1d0f0b1 | |
parent | 1f342790ad3c2456e15351829ad5d8919cccc03f (diff) | |
parent | d6fef34ee4d102be448146f24caf96d7b4a05401 (diff) | |
download | libata-004442384416cbb3cedf99eb8ab5f10c32e4dd34.tar.gz |
Merge tag 'io_uring-6.7-2023-11-23' of git://git.kernel.dk/linux
Pull io_uring fixes from Jens Axboe:
"A fix for ensuring that LINKAT always propagates flags correctly, and
a fix for an off-by-one in segment skipping for registered buffers.
Both heading to stable as well"
* tag 'io_uring-6.7-2023-11-23' of git://git.kernel.dk/linux:
io_uring: fix off-by one bvec index
io_uring/fs: consider link->flags when getting path for LINKAT
-rw-r--r-- | io_uring/fs.c | 2 | ||||
-rw-r--r-- | io_uring/rsrc.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/io_uring/fs.c b/io_uring/fs.c index 08e3b175469c68..eccea851dd5a28 100644 --- a/io_uring/fs.c +++ b/io_uring/fs.c @@ -254,7 +254,7 @@ int io_linkat_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe) newf = u64_to_user_ptr(READ_ONCE(sqe->addr2)); lnk->flags = READ_ONCE(sqe->hardlink_flags); - lnk->oldpath = getname(oldf); + lnk->oldpath = getname_uflags(oldf, lnk->flags); if (IS_ERR(lnk->oldpath)) return PTR_ERR(lnk->oldpath); diff --git a/io_uring/rsrc.c b/io_uring/rsrc.c index 7034be555334d2..f521c5965a9331 100644 --- a/io_uring/rsrc.c +++ b/io_uring/rsrc.c @@ -1258,7 +1258,7 @@ int io_import_fixed(int ddir, struct iov_iter *iter, */ const struct bio_vec *bvec = imu->bvec; - if (offset <= bvec->bv_len) { + if (offset < bvec->bv_len) { /* * Note, huge pages buffers consists of one large * bvec entry and should always go this way. The other |