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...

Reply via email to