It just means that one of the fields in pstat lacks the precision to
store a value. That's not an issue for pst_highestfd.
return;
#endif
#if defined(HAVE_PSTAT_GETPROC)
- if (pstat_getproc(&pstat, sizeof(pstat), 0, getpid()) != -1) {
+ /*
+ * EOVERFLOW is not a fatal error for the fields we use.
+ * See the "EOVERFLOW Error" section of pstat_getvminfo(3).
+ */
+ if (pstat_getproc(&pstat, sizeof(pstat), 0, getpid()) != -1 ||
+ errno == EOVERFLOW) {
int fd;
for (fd = lowfd; fd <= pstat.pst_highestfd; fd++)