diff --git a/src/system/kernel/fs/vfs_request_io.cpp b/src/system/kernel/fs/vfs_request_io.cpp index 7c0d634e46..a2efa11a06 100644 --- a/src/system/kernel/fs/vfs_request_io.cpp +++ b/src/system/kernel/fs/vfs_request_io.cpp @@ -410,6 +410,11 @@ vfs_vnode_io(struct vnode* vnode, void* cookie, io_request* request) return synchronous_io(request, io); } + if (result != B_OK && !request->IsFinished()) { + // The request failed, but its owner has not been notified yet + request->SetStatusAndNotify(result); + } + return result; }