git: b3168306a13b - main - fstat: identify kqueue, mqueue, and procdesc file descriptors

From: Alan Somers <asomers_at_FreeBSD.org>
Date: Fri, 13 Jun 2025 20:33:25 UTC
The branch main has been updated by asomers:

URL: https://cgit.FreeBSD.org/src/commit/?id=b3168306a13b9d95c2b01bf7a483c1af9ec0d797

commit b3168306a13b9d95c2b01bf7a483c1af9ec0d797
Author:     Alan Somers <asomers@FreeBSD.org>
AuthorDate: 2025-01-28 17:59:41 +0000
Commit:     Alan Somers <asomers@FreeBSD.org>
CommitDate: 2025-06-13 20:33:02 +0000

    fstat: identify kqueue, mqueue, and procdesc file descriptors
    
    When displaying kqueue, mqueue, and procdesc file descriptors, identify
    them as such.  There aren't any details, but it's better than a scary
    warning like "unknown file type 15 for file 6 of pid 26393".
    
    Sponsored by:   ConnectWise
    Differential Revision: https://reviews.freebsd.org/D48706
    MFC after:      2 weeks
---
 usr.bin/fstat/fstat.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/usr.bin/fstat/fstat.c b/usr.bin/fstat/fstat.c
index e5d0755062d0..e93385a5b0f6 100644
--- a/usr.bin/fstat/fstat.c
+++ b/usr.bin/fstat/fstat.c
@@ -299,14 +299,26 @@ print_file_info(struct procstat *procstat, struct filestat *fst,
 	case PS_FST_TYPE_PTS:
 		print_pts_info(procstat, fst);
 		break;
+	case PS_FST_TYPE_KQUEUE:
+		printf(" [kqueue]");
+		break;
+	case PS_FST_TYPE_MQUEUE:
+		printf(" [mqueue]");
+		break;
 	case PS_FST_TYPE_SHM:
 		print_shm_info(procstat, fst);
 		break;
 	case PS_FST_TYPE_SEM:
 		print_sem_info(procstat, fst);
 		break;
+	case PS_FST_TYPE_PROCDESC:
+		printf(" [procdesc]");
+		break;
 	case PS_FST_TYPE_DEV:
 		break;
+	case PS_FST_TYPE_EVENTFD:
+		printf(" [eventfd]");
+		break;
 	default:	
 		if (vflg)
 			fprintf(stderr,