Message ID | 20190731161006.9447-2-stefanha@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | virtiofsd: multithreading preparation part 2 | expand |
* Stefan Hajnoczi (stefanha@redhat.com) wrote: > The lo_add_fd_mapping() function assumes lo->mutex is held, so we should > acquire it. > > Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Thanks, applied Would it make sense for me to squash this into: virtiofsd: passthrough_ll: add fd_map to hide file descriptors ? Dave > --- > contrib/virtiofsd/passthrough_ll.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/contrib/virtiofsd/passthrough_ll.c b/contrib/virtiofsd/passthrough_ll.c > index 65b7352c95..417a104218 100644 > --- a/contrib/virtiofsd/passthrough_ll.c > +++ b/contrib/virtiofsd/passthrough_ll.c > @@ -1555,7 +1555,9 @@ static void lo_create(fuse_req_t req, fuse_ino_t parent, const char *name, > > update_version(lo, lo_inode(req, parent)); > > + pthread_mutex_lock(&lo->mutex); > fh = lo_add_fd_mapping(req, fd); > + pthread_mutex_unlock(&lo->mutex); > if (fh == -1) { > close(fd); > fuse_reply_err(req, ENOMEM); > @@ -1760,7 +1762,9 @@ static void lo_open(fuse_req_t req, fuse_ino_t ino, struct fuse_file_info *fi) > if (fd == -1) > return (void) fuse_reply_err(req, errno); > > + pthread_mutex_lock(&lo->mutex); > fh = lo_add_fd_mapping(req, fd); > + pthread_mutex_unlock(&lo->mutex); > if (fh == -1) { > close(fd); > fuse_reply_err(req, ENOMEM); > -- > 2.21.0 > -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
On Wed, Jul 31, 2019 at 07:45:38PM +0100, Dr. David Alan Gilbert wrote: > * Stefan Hajnoczi (stefanha@redhat.com) wrote: > > The lo_add_fd_mapping() function assumes lo->mutex is held, so we should > > acquire it. > > > > Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> > > Thanks, applied > > Would it make sense for me to squash this into: > virtiofsd: passthrough_ll: add fd_map to hide file descriptors > > ? Yes, please. Feel free to squash any of my virtio-fs patches as you see fit in order to produce a nice clean patch series for upstream. I don't mind if fine-grained authorship information is lost, but please keep my Signed-off-by. Stefan
diff --git a/contrib/virtiofsd/passthrough_ll.c b/contrib/virtiofsd/passthrough_ll.c index 65b7352c95..417a104218 100644 --- a/contrib/virtiofsd/passthrough_ll.c +++ b/contrib/virtiofsd/passthrough_ll.c @@ -1555,7 +1555,9 @@ static void lo_create(fuse_req_t req, fuse_ino_t parent, const char *name, update_version(lo, lo_inode(req, parent)); + pthread_mutex_lock(&lo->mutex); fh = lo_add_fd_mapping(req, fd); + pthread_mutex_unlock(&lo->mutex); if (fh == -1) { close(fd); fuse_reply_err(req, ENOMEM); @@ -1760,7 +1762,9 @@ static void lo_open(fuse_req_t req, fuse_ino_t ino, struct fuse_file_info *fi) if (fd == -1) return (void) fuse_reply_err(req, errno); + pthread_mutex_lock(&lo->mutex); fh = lo_add_fd_mapping(req, fd); + pthread_mutex_unlock(&lo->mutex); if (fh == -1) { close(fd); fuse_reply_err(req, ENOMEM);
The lo_add_fd_mapping() function assumes lo->mutex is held, so we should acquire it. Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> --- contrib/virtiofsd/passthrough_ll.c | 4 ++++ 1 file changed, 4 insertions(+)