diff --git a/winsup/doc/posix.xml b/winsup/doc/posix.xml
index 0669d07de..48ab7dbc9 100644
--- a/winsup/doc/posix.xml
+++ b/winsup/doc/posix.xml
@@ -64,7 +64,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
atoi
atol
atoll
- basename (see chapter "Implementation Notes")
+ basename (see chapter "Implementation Notes")
bind
bsearch
btowc
@@ -126,8 +126,8 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
clock_getcpuclockid
clock_getres
clock_gettime
- clock_nanosleep (see chapter "Implementation Notes")
- clock_settime (see chapter "Implementation Notes")
+ clock_nanosleep (see chapter "Implementation Notes")
+ clock_settime (see chapter "Implementation Notes")
clog
clogf
clogl
@@ -242,7 +242,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
fchown
fchownat
fclose
- fcntl (see chapter "Implementation Notes")
+ fcntl (see chapter "Implementation Notes")
fdatasync
fdim
fdimf
@@ -292,7 +292,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
fopen
fork
fpathconf
- fpclassify (see chapter "Implementation Notes")
+ fpclassify (see chapter "Implementation Notes")
fprintf
fputc
fputs
@@ -347,7 +347,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
getgroups
gethostid
gethostname
- getitimer (see chapter "Implementation Notes")
+ getitimer (see chapter "Implementation Notes")
getline
getlogin
getlogin_r
@@ -367,7 +367,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
getpwnam_r
getpwuid
getpwuid_r
- getrlimit
+ getrlimit (see chapter "Implementation Notes")
getrusage
gets
getservbyname
@@ -428,26 +428,26 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
iscntrl_l
isdigit
isdigit_l
- isfinite (see chapter "Implementation Notes")
+ isfinite (see chapter "Implementation Notes")
isgraph
isgraph_l
- isgreater (see chapter "Implementation Notes")
- isgreaterequal (see chapter "Implementation Notes")
- isinf (see chapter "Implementation Notes")
+ isgreater (see chapter "Implementation Notes")
+ isgreaterequal (see chapter "Implementation Notes")
+ isinf (see chapter "Implementation Notes")
isless
- islessequal (see chapter "Implementation Notes")
- islessgreater (see chapter "Implementation Notes")
+ islessequal (see chapter "Implementation Notes")
+ islessgreater (see chapter "Implementation Notes")
islower
islower_l
- isnan (see chapter "Implementation Notes")
- isnormal (see chapter "Implementation Notes")
+ isnan (see chapter "Implementation Notes")
+ isnormal (see chapter "Implementation Notes")
isprint
isprint_l
ispunct
ispunct_l
isspace
isspace_l
- isunordered (see chapter "Implementation Notes")
+ isunordered (see chapter "Implementation Notes")
isupper
isupper_l
iswalnum
@@ -511,7 +511,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
localeconv
localtime
localtime_r
- lockf (see chapter "Implementation Notes")
+ lockf (see chapter "Implementation Notes")
log
log10
log10f
@@ -579,10 +579,10 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
mq_timedsend
mq_unlink
mrand48
- msgctl (see chapter "Implementation Notes")
- msgget (see chapter "Implementation Notes")
- msgrcv (see chapter "Implementation Notes")
- msgsnd (see chapter "Implementation Notes")
+ msgctl (see chapter "Implementation Notes")
+ msgget (see chapter "Implementation Notes")
+ msgrcv (see chapter "Implementation Notes")
+ msgsnd (see chapter "Implementation Notes")
msync
munlock
munmap
@@ -834,9 +834,9 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
sem_trywait
sem_unlink
sem_wait
- semctl (see chapter "Implementation Notes")
- semget (see chapter "Implementation Notes")
- semop (see chapter "Implementation Notes")
+ semctl (see chapter "Implementation Notes")
+ semget (see chapter "Implementation Notes")
+ semop (see chapter "Implementation Notes")
send
sendmsg
sendto
@@ -847,7 +847,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
setgid
setgrent
sethostent
- setitimer (see chapter "Implementation Notes")
+ setitimer (see chapter "Implementation Notes")
setjmp
setkey (available in external "crypt" library)
setlocale
@@ -859,7 +859,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
setpwent
setregid
setreuid
- setrlimit
+ setrlimit (see chapter "Implementation Notes")
setservent
setsid
setsockopt
@@ -869,10 +869,10 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
setvbuf
shm_open
shm_unlink
- shmat (see chapter "Implementation Notes")
- shmctl (see chapter "Implementation Notes")
- shmdt (see chapter "Implementation Notes")
- shmget (see chapter "Implementation Notes")
+ shmat (see chapter "Implementation Notes")
+ shmctl (see chapter "Implementation Notes")
+ shmdt (see chapter "Implementation Notes")
+ shmget (see chapter "Implementation Notes")
shutdown
sigaction
sigaddset
@@ -886,9 +886,9 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
sigismember
siglongjmp
signal
- signbit (see chapter "Implementation Notes")
+ signbit (see chapter "Implementation Notes")
signgam
- sigpause (see chapter "Implementation Notes")
+ sigpause (see chapter "Implementation Notes")
sigpending
sigprocmask
sigqueue
@@ -937,7 +937,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
strdup
strerror
strerror_l
- strerror_r (see chapter "Implementation Notes")
+ strerror_r (see chapter "Implementation Notes")
strfmon
strfmon_l
strftime
@@ -1001,7 +1001,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
tgammaf
tgammal
time
- timer_create (see chapter "Implementation Notes")
+ timer_create (see chapter "Implementation Notes")
timer_delete
timer_getoverrun
timer_gettime
@@ -1162,7 +1162,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
finitef
finitel
fiprintf
- flock (see chapter "Implementation Notes")
+ flock (see chapter "Implementation Notes")
fls
flsl
flsll
@@ -1212,7 +1212,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
madvise
mkstemps
openpty
- qsort_r (see chapter "Implementation Notes")
+ qsort_r (see chapter "Implementation Notes")
rcmd
rcmd_af
reallocarray
@@ -1257,7 +1257,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
valloc
verr
verrx
- vhangup (see chapter "Implementation Notes")
+ vhangup (see chapter "Implementation Notes")
vsyslog
vwarn
vwarnx
@@ -1291,14 +1291,14 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
asnprintf
asprintf
asprintf_r
- basename (see chapter "Implementation Notes")
+ basename (see chapter "Implementation Notes")
canonicalize_file_name
clearenv
clog10
clog10f
clog10l
crypt_r (available in external "crypt" library)
- dladdr (see chapter "Implementation Notes")
+ dladdr (see chapter "Implementation Notes")
dremf
dup3
envz_add
@@ -1370,8 +1370,8 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
ptsname_r
putwc_unlocked
putwchar_unlocked
- renameat2 (see chapter "Implementation Notes")
- qsort_r (see chapter "Implementation Notes")
+ renameat2 (see chapter "Implementation Notes")
+ qsort_r (see chapter "Implementation Notes")
quotactl
rawmemchr
removexattr
@@ -1545,8 +1545,8 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
bcmp (POSIX.1-2001, SUSv3)
bcopy (SUSv3)
bzero (SUSv3)
- chroot (SUSv2) (see chapter "Implementation Notes")
- clock_setres (QNX, VxWorks) (see chapter "Implementation Notes")
+ chroot (SUSv2) (see chapter "Implementation Notes")
+ clock_setres (QNX, VxWorks) (see chapter "Implementation Notes")
cuserid (POSIX.1-1988, SUSv2)
ecvt (SUSv3)
endutent (XPG2)
@@ -1592,7 +1592,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).
ualarm (SUSv3)
usleep (SUSv3)
utmpname (XPG2)
- vfork (SUSv3) (see chapter "Implementation Notes")
+ vfork (SUSv3) (see chapter "Implementation Notes")
@@ -1727,6 +1727,19 @@ flavors, depending on whether _GNU_SOURCE is defined when compiling.
dladdr always sets the Dl_info members dli_sname and
dli_saddr to NULL, indicating no symbol matching addr could be found.
+getrlimit resources RLIMIT_AS, RLIMIT_CPU,
+RLIMIT_FSIZE, RLIMIT_DATA always return rlim_cur and rlim_max as RLIM_INFINITY,
+so setrlimit returns -1 and sets EINVAL if they are
+lowered, or returns 0 if unchanged.
+getrlimit resource RLIMIT_NOFILE always returns rlim_cur
+and rlim_max as OPEN_MAX; setrlimit returns 0 sets EINVAL
+if rlim_cur > rlim_max, does not change the value if it is RLIM_INFINITY,
+otherwise returns the result from setdtablesize.
+getrlimit/setrlimit resources
+RLIMIT_CORE and RLIMIT_STACK return the current values and set the requested
+values.
+All other resource arguments return -1 and set EINVAL.
+