Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Sep 2000 20:12:48 -0700 (PDT)
From:      Chris Costello <chris@calldei.com>
To:        hackers@FreeBSD.org
Cc:        current@FreeBSD.org
Subject:   Fdescfs updates--coming to a devfs near you!
Message-ID:  <200009140312.UAA22657@dei.calldei.com>

next in thread | raw e-mail | index | archive | help
   Over the past few months, I've been working on the /dev/fd file system
("fdescfs").  After weeks of occasionally-hacking and putting it off, I've
finalized a patch for fdescfs.

  What this patch changes:
  + fdesc_allocvp() becomes curproc-free as a `struct proc' pointer is passed
    as the new fourth parameter.
  + All usage of the `DTYPE' open file type macros are removed.  Anything
    whose fo_stat() operation does not return proper fdesc information is
    broken.  The checks for DTYPE_VNODE (for determining whether setattr()
    will do anything) are replaced by getvnode() so that if the method for
    determining a vnode from a file entry changes, (hopefully) that's the
    only place it will happen.

   There is one loose end I'm not sure I know just how to tie up yet.  I'm
having trouble modifying src/sys/kern/sys_pipe.c:pipe_stat() to return the
right st_mode flags based on various conditions.  I'd appreciate it if
someone else who knows about the pipe code could point me in the right
direction as to what conditions permit reading and what conditions permit
writing (and what makes them fail).

   The patch is available at
     http://people.FreeBSD.org/~chris/fdesc-dtype.patch,

   Documentation for it is available at
     http://people.FreeBSD.org/~chris/fdesc/
    all in one page:
     http://people.FreeBSD.org/~chris/fdesc/article.html

|Chris Costello <chris@calldei.com>
|Press [ESC] to detonate or any other key to explode.
`----------------------------------------------------


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200009140312.UAA22657>