mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-11-23 18:14:04 +08:00
assorted fixes all over the place
-----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQQqUNBr3gm4hGXdBJlZ7Krx/gZQ6wUCZTxSwQAKCRBZ7Krx/gZQ 6zadAP9o/724KPDCY3ybgwKyEQ1UNjHTriFRBeoF3o2q0WgidwEA+/xS0Xk3i25w xnSZO/8My1edE1IcK/JDwewH/J+4Kw0= =N/Lv -----END PGP SIGNATURE----- Merge tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs Pull misc filesystem fixes from Al Viro: "Assorted fixes all over the place: literally nothing in common, could have been three separate pull requests. All are simple regression fixes, but not for anything from this cycle" * tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: ceph_wait_on_conflict_unlink(): grab reference before dropping ->d_lock io_uring: kiocb_done() should *not* trust ->ki_pos if ->{read,write}_iter() failed sparc32: fix a braino in fault handling in csum_and_copy_..._user()
This commit is contained in:
commit
d1b0949f23
@ -453,5 +453,5 @@ ccslow: cmp %g1, 0
|
||||
* we only bother with faults on loads... */
|
||||
|
||||
cc_fault:
|
||||
ret
|
||||
retl
|
||||
clr %o0
|
||||
|
@ -861,8 +861,8 @@ int ceph_wait_on_conflict_unlink(struct dentry *dentry)
|
||||
if (!d_same_name(udentry, pdentry, &dname))
|
||||
goto next;
|
||||
|
||||
found = dget_dlock(udentry);
|
||||
spin_unlock(&udentry->d_lock);
|
||||
found = dget(udentry);
|
||||
break;
|
||||
next:
|
||||
spin_unlock(&udentry->d_lock);
|
||||
|
@ -339,7 +339,7 @@ static int kiocb_done(struct io_kiocb *req, ssize_t ret,
|
||||
struct io_rw *rw = io_kiocb_to_cmd(req, struct io_rw);
|
||||
unsigned final_ret = io_fixup_rw_res(req, ret);
|
||||
|
||||
if (req->flags & REQ_F_CUR_POS)
|
||||
if (ret >= 0 && req->flags & REQ_F_CUR_POS)
|
||||
req->file->f_pos = rw->kiocb.ki_pos;
|
||||
if (ret >= 0 && (rw->kiocb.ki_complete == io_complete_rw)) {
|
||||
if (!__io_complete_rw_common(req, ret)) {
|
||||
|
Loading…
Reference in New Issue
Block a user