I am confused about what vnode operation vop_lookup_desc should return for two directory entries that refer to the same underling filesystem inode (i.e. hard links).
// VNODE(9): There is a unique vnode allocated for each active file, directory, mounted-on file, fifo, domain socket, symbolic link and device." Does this mean that (1) a unique vnode per directory entry or (2) a unique vnode per inode ? I suspect that the answer is (2), but when I do this and just return the already locked vnode, I get this assertion. // Reader / writer lock error: rw_vector_exit: assertion failed: RW_COUNT(rw) != 0 Examples from other filesystems in the code base either do the same or perform a vget() based some flags, but if the vnode is active it would not be on the free list. Any suggestions? Thanks, FrankZ
