From b9cbc49b70c96bed047f8c9f2e995719ca68fc01 Mon Sep 17 00:00:00 2001 From: Ken Brown Date: Fri, 29 Jan 2021 09:02:15 -0500 Subject: [PATCH] Cygwin: sysconf, getrlimit: don't call getdtablesize Now that getdtablesize always returns OPEN_MAX_MAX, we can simplify sysconf(_SC_OPEN_MAX) and getrlimit(RLIMIT_NOFILE) to just use that same constant instead of calling getdtablesize. --- winsup/cygwin/resource.cc | 5 +---- winsup/cygwin/sysconf.cc | 11 +---------- 2 files changed, 2 insertions(+), 14 deletions(-) diff --git a/winsup/cygwin/resource.cc b/winsup/cygwin/resource.cc index 9e39d3a04..ac56acf8c 100644 --- a/winsup/cygwin/resource.cc +++ b/winsup/cygwin/resource.cc @@ -182,10 +182,7 @@ getrlimit (int resource, struct rlimit *rlp) __get_rlimit_stack (rlp); break; case RLIMIT_NOFILE: - rlp->rlim_cur = getdtablesize (); - if (rlp->rlim_cur < OPEN_MAX) - rlp->rlim_cur = OPEN_MAX; - rlp->rlim_max = OPEN_MAX_MAX; + rlp->rlim_cur = rlp->rlim_max = OPEN_MAX_MAX; break; case RLIMIT_CORE: rlp->rlim_cur = cygheap->rlim_core; diff --git a/winsup/cygwin/sysconf.cc b/winsup/cygwin/sysconf.cc index 001da96ad..d5d82bb4a 100644 --- a/winsup/cygwin/sysconf.cc +++ b/winsup/cygwin/sysconf.cc @@ -21,15 +21,6 @@ details. */ #include "cpuid.h" #include "clock.h" -static long -get_open_max (int in) -{ - long max = getdtablesize (); - if (max < OPEN_MAX) - max = OPEN_MAX; - return max; -} - static long get_page_size (int in) { @@ -520,7 +511,7 @@ static struct {cons, {c:CHILD_MAX}}, /* 1, _SC_CHILD_MAX */ {cons, {c:CLOCKS_PER_SEC}}, /* 2, _SC_CLK_TCK */ {cons, {c:NGROUPS_MAX}}, /* 3, _SC_NGROUPS_MAX */ - {func, {f:get_open_max}}, /* 4, _SC_OPEN_MAX */ + {cons, {c:OPEN_MAX_MAX}}, /* 4, _SC_OPEN_MAX */ {cons, {c:_POSIX_JOB_CONTROL}}, /* 5, _SC_JOB_CONTROL */ {cons, {c:_POSIX_SAVED_IDS}}, /* 6, _SC_SAVED_IDS */ {cons, {c:_POSIX_VERSION}}, /* 7, _SC_VERSION */ -- 2.43.5