[Bug 201611] [patch] Add devfs_get_cdevpriv_from_file(9)

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Fri Sep 18 20:15:54 UTC 2015


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=201611

--- Comment #3 from Andy Ritger <aritger at nvidia.com> ---
(In reply to Konstantin Belousov from comment #2)

Thanks for taking a look.

Sorry that I didn't describe things well in my original post.  The intent
is for this usage pattern:

    process A:
        fda_dev = open("/dev/nvidia0");

        // [...allocate resources...]

        // allocate file to pass resource to process B
        fda = open("/dev/nvidia0");

        // associate resource with fda
        params.resource = handleForResource;
        params.fd = fda;
        ioctl(fda_dev, opcode, &params, sizeof(params));

        SendFdToProcessB(fda);
        close(fda);

    process B:
        fdb_dev = open("/dev/nvidia0");

        // resource resource from process A
        fdb = RecvFdFromProcessA();

        // look up resource assocated with fd
        params.fd = fdb;
        ioctl(fdb_dev, opcode, &params, sizeof(params));
        close(fdb);

        resource = params.handleForResource

(i.e., the fd for the resource is different than the fd on which the
ioctl is performed)

It is important that fd[ab] are different than fd[ab]_dev: process A
doesn't want to give process B access to _everything_: just a specific
resource.

Does that make sense?

Thanks.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list