On Fri, May 01, 2020 at 01:11:09PM -0600, Jens Axboe wrote: > + flags &= EFD_SHARED_FCNTL_FLAGS; > + flags |= O_RDWR; > + fd = get_unused_fd_flags(flags); > if (fd < 0) > - eventfd_free_ctx(ctx); > + goto err; > + > + file = anon_inode_getfile("[eventfd]", &eventfd_fops, ctx, flags); > + if (IS_ERR(file)) { > + put_unused_fd(fd); > + fd = PTR_ERR(file); > + goto err; > + } > > + file->f_mode |= FMODE_NOWAIT; > + fd_install(fd, file); > + return fd; > +err: > + eventfd_free_ctx(ctx); > return fd; > } Looks sane... I can take it via vfs.git, or leave it for you if you have other stuff in the same area...