Provided by: freebsd-manpages_12.2-1_all bug

NAME

       dev_clone, drain_dev_clone_events — eventhandler for name-based device cloning in devfs

SYNOPSIS

       #include <sys/param.h>
       #include <sys/conf.h>

       void
       clone_handler(void *arg, struct ucred *cr, char *name, int namelen, struct cdev **dev);

       EVENTHANDLER_REGISTER(dev_clone, clone_handler, arg, priority);

       void
       drain_dev_clone_events();

DESCRIPTION

       A  device  driver  may  register a listener that will be notified each time a name lookup on the devfs(5)
       mount point fails to find the vnode.  A listener shall be  registered  for  the  dev_clone  event.   When
       called,  it  is  supplied  with  the  first argument arg that was specified at handler registration time,
       appropriate credentials cr, and a name name of length namelen that we look for.  If the  handler  decides
       that  the  name  is  appropriate and wants to create the device that will be associated with the name, it
       should return it to devfs in the dev argument.

       The drain_dev_clone_events() function is a barrier.  It is guaranteed that all calls to eventhandlers for
       dev_clone that were started before drain_dev_clone_events() call, are finished before it returns control.

SEE ALSO

       devfs(5), namei(9)

Debian                                           January 3, 2009                                    DEV_CLONE(9)