svn commit: r345662 - projects/fuse2/sys/fs/fuse
Alan Somers
asomers at FreeBSD.org
Thu Mar 28 21:57:43 UTC 2019
Author: asomers
Date: Thu Mar 28 21:57:42 2019
New Revision: 345662
URL: https://svnweb.freebsd.org/changeset/base/345662
Log:
fusefs: fix error handling in fuse_vnop_strategy
Reported by: cem
Sponsored by: The FreeBSD Foundation
Modified:
projects/fuse2/sys/fs/fuse/fuse_io.c
projects/fuse2/sys/fs/fuse/fuse_vnops.c
Modified: projects/fuse2/sys/fs/fuse/fuse_io.c
==============================================================================
--- projects/fuse2/sys/fs/fuse/fuse_io.c Thu Mar 28 21:43:01 2019 (r345661)
+++ projects/fuse2/sys/fs/fuse/fuse_io.c Thu Mar 28 21:57:42 2019 (r345662)
@@ -652,6 +652,7 @@ fuse_io_strategy(struct vnode *vp, struct buf *bp)
printf("FUSE: strategy: filehandles are closed\n");
bp->b_ioflags |= BIO_ERROR;
bp->b_error = error;
+ bufdone(bp);
return (error);
}
cred = bp->b_iocmd == BIO_READ ? bp->b_rcred : bp->b_wcred;
Modified: projects/fuse2/sys/fs/fuse/fuse_vnops.c
==============================================================================
--- projects/fuse2/sys/fs/fuse/fuse_vnops.c Thu Mar 28 21:43:01 2019 (r345661)
+++ projects/fuse2/sys/fs/fuse/fuse_vnops.c Thu Mar 28 21:57:42 2019 (r345662)
@@ -1710,7 +1710,7 @@ fuse_vnop_strategy(struct vop_strategy_args *ap)
bp->b_ioflags |= BIO_ERROR;
bp->b_error = ENXIO;
bufdone(bp);
- return ENXIO;
+ return 0;
}
if (bp->b_iocmd == BIO_WRITE) {
int err;
@@ -1719,6 +1719,7 @@ fuse_vnop_strategy(struct vop_strategy_args *ap)
if (err) {
bp->b_ioflags |= BIO_ERROR;
bp->b_error = err;
+ bufdone(bp);
return 0;
}
}
More information about the svn-src-projects
mailing list