#
322340 |
|
10-Aug-2017 |
dchagin |
MFC r321839:
Implement proper Linux /dev/fd and /proc/self/fd behavior by adding Linux specific things to the native fdescfs file system.
Unlike FreeBSD, the Linux fdescfs is a directory containing a symbolic links to the actual files, which the process has open. A readlink(2) call on this file returns a full path in case of regular file or a string in a special format (type:[inode], anon_inode:<file-type>, etc..). As well as in a FreeBSD, opening the file in the Linux fdescfs directory is equivalent to duplicating the corresponding file descriptor.
Here we have mutually exclusive requirements: - in case of readlink(2) call fdescfs lookup() method should return VLNK vnode otherwise our kern_readlink() fail with EINVAL error; - in the other calls fdescfs lookup() method should return non VLNK vnode.
For what new vnode v_flag VV_READLINK was added, which is set if fdescfs has beed mounted with linrdlnk option an modified kern_readlinkat() to properly handle it.
For now For Linux ABI compatibility mount fdescfs volume with linrdlnk option:
mount -t fdescfs -o linrdlnk null /compat/linux/dev/fd
Relnotes: yes Differential Revision: https://reviews.freebsd.org/D11452
|
#
181942 |
|
20-Aug-2008 |
rpaulo |
Move man pages out of man4.i386. Most of them are applicable to amd64 too, so, instead of descending to the i386 directory, we add some magic to the parent Makefile. These man pages refer to drivers that I'm aware that work on amd64. Most likely there are more, but I'll deal with them later.
Approved by: brueffer, philip, takawata
|