? sys/miscfs/procfs/ChangeLog ? sys/miscfs/procfs/vi.core Index: sys/miscfs/procfs/procfs.h =================================================================== RCS file: /cvsroot/src/sys/miscfs/procfs/procfs.h,v retrieving revision 1.75 diff -p -u -r1.75 procfs.h --- sys/miscfs/procfs/procfs.h 30 Mar 2019 23:28:30 -0000 1.75 +++ sys/miscfs/procfs/procfs.h 25 Apr 2019 20:46:45 -0000 @@ -115,6 +115,7 @@ typedef enum { #ifdef __HAVE_PROCFS_MACHDEP PROCFS_MACHDEP_NODE_TYPES #endif + PFSlast, /* track number of types */ } pfstype; /* @@ -163,11 +164,14 @@ struct procfs_args { #define UIO_MX 32 +#define PROCFS_FDLAST 2048 #define PROCFS_FILENO(pid, type, fd) \ - (((type) < PFSproc) ? ((type) + 2) : \ - (((fd) == -1) ? ((((pid)+1) << 5) + ((int) (type))) : \ - ((((pid)+1) << 16) | ((fd) << 5) | ((int) (type))))) -#define PROCFS_TYPE(type) ((type) & 0x1f) + ( (type) == PFSroot ? 2 \ + : (type) == PFScurproc ? 3 \ + : (type) == PFSself ? 4 \ + : (fd) == -1 ? ((pid)+1) * PFSlast + (type) \ + : (((pid)+1) * PROCFS_FDLAST + (fd)) * PFSlast + (type)) +#define PROCFS_TYPE(type) ((type) % PFSlast) struct procfsmount { void *pmnt_exechook;