diff options
author | Konstantin Belousov <kib@FreeBSD.org> | 2022-09-18 14:44:49 +0000 |
---|---|---|
committer | Konstantin Belousov <kib@FreeBSD.org> | 2022-09-24 16:41:14 +0000 |
commit | cc65a412ae226136e6207bdc8db4722dab99982f (patch) | |
tree | 2aea9c1bf79b3a016a946de939345980b5ee0142 /sys/fs/fuse/fuse_io.c | |
parent | 0f01fb01c2de3e2c9ce8719750aea379c402ece6 (diff) | |
download | src-cc65a412ae226136e6207bdc8db4722dab99982f.tar.gz src-cc65a412ae226136e6207bdc8db4722dab99982f.zip |
filesystems: return error from vn_rlimit_fsize() instead of EFBIG
Reviewed by: asomers, jah, markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 2 weeks
Differential revision: https://reviews.freebsd.org/D36625
Diffstat (limited to 'sys/fs/fuse/fuse_io.c')
-rw-r--r-- | sys/fs/fuse/fuse_io.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/fs/fuse/fuse_io.c b/sys/fs/fuse/fuse_io.c index 9ef4badfcdff..252fabb1c7d6 100644 --- a/sys/fs/fuse/fuse_io.c +++ b/sys/fs/fuse/fuse_io.c @@ -338,8 +338,9 @@ fuse_write_directbackend(struct vnode *vp, struct uio *uio, if (ioflag & IO_APPEND) uio_setoffset(uio, filesize); - if (vn_rlimit_fsize(vp, uio, uio->uio_td)) - return (EFBIG); + err = vn_rlimit_fsize(vp, uio, uio->uio_td); + if (err != 0) + return (err); fdisp_init(&fdi, 0); @@ -493,8 +494,9 @@ fuse_write_biobackend(struct vnode *vp, struct uio *uio, if (ioflag & IO_APPEND) uio_setoffset(uio, filesize); - if (vn_rlimit_fsize(vp, uio, uio->uio_td)) - return (EFBIG); + err = vn_rlimit_fsize(vp, uio, uio->uio_td); + if (err != 0) + return (err); do { bool direct_append, extending; |