]> www.infradead.org Git - users/hch/misc.git/commitdiff
media: switch to fdget()
authorAl Viro <viro@zeniv.linux.org.uk>
Sun, 14 Apr 2019 16:55:07 +0000 (12:55 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Thu, 2 May 2019 06:25:54 +0000 (02:25 -0400)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
drivers/media/media-request.c

index eec2e2b2f6eca53a3eb29c1129bf0bf481b831ad..9e5fd2ac769e53091d60369b1f978d3df4dcdf8c 100644 (file)
@@ -246,38 +246,38 @@ static const struct file_operations request_fops = {
 struct media_request *
 media_request_get_by_fd(struct media_device *mdev, int request_fd)
 {
-       struct file *filp;
+       struct fd f;
        struct media_request *req;
 
        if (!mdev || !mdev->ops ||
            !mdev->ops->req_validate || !mdev->ops->req_queue)
                return ERR_PTR(-EACCES);
 
-       filp = fget(request_fd);
-       if (!filp)
+       f = fdget(request_fd);
+       if (!f.file)
                goto err_no_req_fd;
 
-       if (filp->f_op != &request_fops)
+       if (f.file->f_op != &request_fops)
                goto err_fput;
-       req = filp->private_data;
+       req = f.file->private_data;
        if (req->mdev != mdev)
                goto err_fput;
 
        /*
         * Note: as long as someone has an open filehandle of the request,
-        * the request can never be released. The fget() above ensures that
+        * the request can never be released. The fdget() above ensures that
         * even if userspace closes the request filehandle, the release()
         * fop won't be called, so the media_request_get() always succeeds
         * and there is no race condition where the request was released
         * before media_request_get() is called.
         */
        media_request_get(req);
-       fput(filp);
+       fdput(f);
 
        return req;
 
 err_fput:
-       fput(filp);
+       fdput(f);
 
 err_no_req_fd:
        dev_dbg(mdev->dev, "cannot find request_fd %d\n", request_fd);