Age | Commit message (Collapse) | Author |
|
This function closes or sets the close-on-exec flag for a specified
range of file descriptors. It is available on FreeBSD and Linux.
Signed-off-by: Christian Franke <christian.franke@t-online.de>
|
|
Also add notes in terms of fallocate quirks.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
change notes to see "Implementation Notes" to xref to std-notes;
add xref to std-notes to getrlimit, setrlimit;
add note to document limitations of getrlimit, setrlimit resources support
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
This patch set implements the Linux syscalls sched_getaffinity,
sched_setaffinity, pthread_getaffinity_np, and pthread_setaffinity_np.
Linux has a straightforward view of the cpu sets used in affinity masks.
They are simply long (1024-bit) bit masks. This code emulates that view
while internally dealing with Windows' distribution of available CPUs among
processor groups.
|
|
- feenableexcept,fedisableexcept, fegetexcept are GNU-only
- fegetprec, fesetprec are Solaris, use __MISC_VISIBLE
- _feinitialise is Cygwin-internal only
- Replace self-named FP precision values to values from
http://www.open-std.org/jtc1/sc22//WG14/www/docs/n752.htm
as used by Solaris.
- Change return value of fesetprec to adhere to the above document
and Solaris.
- Document fegetprec, fesetprec as Solaris functions, not as GNU
functions
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
First cut of a timerfd implementation.
Still TODO:
- fork/exec semantics
- timerfd_settime TFD_TIMER_CANCEL_ON_SET flag
- ioctl(TFD_IOC_SET_TICKS)
- bug fixes
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
First cut of a signalfd implementation.
Still TODO: Non-polling select.
This should mostly work as on Linux except for missing support
for some members of struct signalfd_siginfo, namely ssi_fd,
ssi_band (both SIGIO/SIGPOLL, not fully implemented) and ssi_trapno
(HW exception, required HW support).
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
- set DELAYTIMER_MAX to INT_MAX
- make sure to set siginfo_t::si_overrun, as on Linux
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
* create new function __get_cpus_per_group to evaluate # of CPU groups
* Call from format_proc_cpuinfo and sched_getcpu
* Bump API minor version
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
Updates to misc files to integrate AIO into the Cygwin source tree.
Much of it has to be done when adding any new syscalls. There are
some updates to limits.h for AIO-specific limits. And some doc mods.
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
Also add earlier "What changed" items to new-features.xml.
|
|
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
Abstract out common code from sigwait/sigwaitinfo/sigtimedwait to
implement the latter.
|
|
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
This was added to newlib together with timingsafe_*cmp but never exported.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
There are two common sigpause variants, both of which take an int argument.
If you request _XOPEN_SOURCE or _GNU_SOURCE, you get the System V version,
which removes the given signal from the process's signal mask; otherwise
you get the BSD version, which sets the process's signal mask to the given
value.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
v2:
autoload PerfDataHelper functions
Keep loadavg in shared memory
Guard loadavg access by a mutex
Initialize loadavg to the current load
v3:
Shared memory version bump isn't needed if we are only extending it
Remove unused autoload
Mark inititalized flags as NO_COPY for correct behaviour in fork child
Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
|
|
Note that this always returns with dli_sname and dli_saddr set to NULL,
indicating no symbol matching addr could be found.
Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
|
|
Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
|
|
Bump Cygwin API minor number.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
This patch adds pthread_getname_np and pthread_setname_np.
These were added to glibc in 2.12[1] and are also present in some form on
NetBSD and several UNIXes.
The code is based on NetBSD's implementation with changes to better match
Linux behaviour.
Implementation quirks:
* pthread_setname_np with a NULL pointer segfaults (as linux)
* pthread_setname_np returns ERANGE for names longer than 16 characters (as
linux)
* pthread_getname_np with a NULL pointer returns EFAULT (as linux)
* pthread_getname_np with a buffer length of less than 16 returns ERANGE (as
linux)
* pthread_getname_np truncates the thread name to fit the buffer length.
This guarantees success even when the default thread name is longer than 16
characters, but means there is no way to discover the actual length of the
thread name. (Linux always truncates the thread name to 16 characters)
* Changing program_invocation_short_name changes the default thread name (on
linux, it has no effect on the default thread name)
I'll leave it up to you to decide if any of these matter.
This is implemented via class pthread_attr to make it easier to add
pthread_attr_[gs]etname_np (present in NetBSD and some UNIXes) should it
ever be added to Linux (or we decide we want it anyway).
[1] https://sourceware.org/git/?p=glibc.git;a=blob;f=NEWS
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
Implement GNU extensions strtod_l, strtof_l, strtol_l, strtold_l, strtoll_l,
strtoul_l, strtoull_l, wcstod_l, wcstof_l, wcstol_l, wcstold_l, wcstoll_l,
wcstoul_l, wcstoull_l.
Export from Cygwin, fix posix.xml.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
Use latest code from FreeBSD
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
|
|
strcasecmp_l, strcoll_l, strncasecmp_l, strxfrm_l,
wcscasecmp_l, wcscoll_l, wcstrncasecmp_l, wcstrxfrm_l,
strftime_l.
Add missing CHEWOUT_FILES from previous patch.
TODO: strfmon_l.
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
|
|
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
|
|
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
* posix.xml (std-susv4): Add newly implemented math SUSv4 math
functions. Add missing functions strtold and tcgetsid. Re-sort.
(std-gnu): Add clog10l, exp10l, pow10l, sincos{f,l}.
(std-notimpl): Drop now implemented functions.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
winsup/cygwin/
* common.din: Add clog10, clog10f.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
winsup/doc/
* new-features.xml (ov-new2.5): Mention clog10, clog10f.
* posix.xml (std-gnu): Add clog10, clog10f.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
posix.xml (std-susv4): Add pthread_barrier* functions.
(std-notimpl): Remove here.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
winsup/cygwin/
* common.din (rpmatch): Export.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
winsup/doc/
* new-features.xml (ov-new2.4): New section. Document rpmatch.
* posix.xml (std-bsd): Add rpmatch.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
* common.din (aligned_alloc): Export.
(at_quick_exit): Export.
(quick_exit): Export.
* posix.xml (std-iso): New section.
(std-deprec): Rearrange title text.
* new-features.xml (ov-new2.3): Document aligned_alloc, at_quick_exit,
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
* common.din (getcontext): Export.
(makecontext): Export.
(setcontext): Export.
(swapcontext): Export.
* exceptions.cc (__unwind_single_frame): New static functions, 64 bit
only.
(setcontext): New function.
(getcontext): New function.
(swapcontext): New function.
(__cont_link_context): New function.
(makecontext): New function.
* include/cygwin/version.h (CYGWIN_VERSION_DLL_MAJOR): Bump to 2002.
(CYGWIN_VERSION_API_MINOR): Bump.
* include/ucontext.h (getcontext): Add prototype.
(setcontext): Ditto.
(swapcontext): Ditto.
(makecontext): Ditto.
* ntdll.h (NtContinue): Ditto.
* new-features.xml (ov-new2.2): Add new section. Document getcontext,
setcontext, makecontext, swapcontext.
* posix.xml (std-deprec): Add getcontext, setcontext, makecontext,
swapcontext.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
* new-features.xml (ov-new2.1): Add alterante signal stack info.
* posix.xml (std-susv4): Move sigaltstack here.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
winsup/cygwin/
* common.din (__gnu_basename): Export.
* path.cc (__gnu_basename): New function.
winsup/doc/
* posix.xml (std-gnu): Add basename.
(std-notes): Add note about two forms of basename.
|