If this will get rid of or clean up the specfs garbage, then I'm all
    for it.  I would love to see a 'clean' fileops based device interface.

                                                -Matt

:I have not examined the full details of doing the shift yet, but it is
:my impression that it actually will reduce the amount of code 
:duplication and special casing.
:
:Basically we will need a new:
:
:       struct fileops devfileops = {
:               dev_read,
:               dev_write,,
:               dev_ioctl,
:               dev_poll,
:               dev_kqfilter,
:               dev_stat,
:               dev_close
:       };
:
:The only places we will need new magic is
:       open, which needs to fix the plumbing for us.
:       mmap, which may have to be added to the fileops vector.
:
:The amount of special-casing code this would remove from the vnode
:layer is rather astonishing.
:
:If we merger vm-objects and vnodes without taking devices out of the
:mix, we will need even more special-case code for devices.
:
:>The vnode is our abstraction for objects that have
:>address spaces, can be opened/closed and retain a seeking position, can be
:>mapped, have protections, etc, etc.
:
:This is simply not correct Robert, UNIX::sockets also have many of
:those properties, but they're not vnodes...
:
:>Besides which,
:>the kernel knows how to act on vnodes, and there is plenty of precedent
:>for the kernel opening vnodes and keeping around references for its own
:>ends, but there isn't all that much precedent for the kernel doing this
:>using file descriptors :-).
:
:Have you actually examined how FIFO and Sockets work Robert ?   :-)
:
:--
:Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
:[EMAIL PROTECTED]         | TCP/IP since RFC 956
:FreeBSD committer       | BSD since 4.3-tahoe    
:Never attribute to malice what can adequately be explained by incompetence.


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to