4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-02-23 09:09:35 +08:00
Corinna Vinschen 363357c023 Cygwin: pinfo: raise MAX_PID to 4194304
Reportedly, the maximum pid of 65536 is much too small in bigger
environments.  Raise the maximum PID to 4194304, whihc is the maximum
pid on Linux (PID_MAX_LIMIT defined in include/linux/threads.h).

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2024-12-19 20:08:18 +01:00

81 lines
3.1 KiB
Plaintext

What's new:
-----------
- New API call: getlocalename_l.
- New API calls: fdclosedir, posix_getdents.
- New API call: setproctitle.
- New API call: timespec_get.
- Add FS_IOC_[GS]ETFLAGS FS_PINNED_FL and FS_UNPINNED_FL flags to handle
Windows attributes FILE_ATTRIBUTE_PINNED and FILE_ATTRIBUTE_UNPINNED.
Add matching 'p' and 'u' mode bits in chattr(1) and lsattr(1).
- New libaio.a provided for projects checking for POSIX aio support
by looking for this library at configure time.
- cygpath -r option allows to generate all Windows paths with root-local
path prefix \\?\.
What changed:
-------------
- ps -f now prints the commandline rather than the full path to the
executable.
- Drop support for NT4 and Samba < 3.0.22.
- Now that SMBv1 is ultimately deprecated and not installed by default
on latest Windows versions, use Network Discovery (i. e. WSD, "Web
Service Discovery") for enumerating network servers in //, just like
Windows Explorer.
- If "server" is given as FQDN, and if "server" is an NFS server,
ls //server now also enumerates NFS shares. If "server" is given
as a flat name, only SMB shares are enumerated.
- Expose //tsclient (Microsoft Terminal Services) shares as well as
//wsl$ (Plan 9 Network Provider) shares, i. e., WSL installation
root dirs.
- Redesign pipe handling to minimize toggling blocking mode.
The query_hdl stuff is no longer needed in new implementation.
- Now using AVX/AVX2/AVX-512 instructions in signal handler does not
break their context.
- nice(2), setpriority(2) and sched_setparam(2) now fail with EACCES
or EPERM if Windows would silently set a lower priority
(HIGH_PRIORITY_CLASS instead of REALTIME_PRIORITY_CLASS) due to
missing administrator privileges.
- nice(2) now returns the new nice value instead of 0 on success
and sets errno to EPERM instead of EACCES on failure. This confirms
to POSIX and Linux (glibc >= 2.2.4) behavior.
- sched_setscheduler(2) now emulates changes between SCHED_OTHER,
SCHED_BATCH, SCHED_IDLE, SCHED_FIFO and SCHED_RR. If SCHED_OTHER or
SCHED_BATCH is selected, the Windows priority is set according to the
nice value where SCHED_BATCH sets a one step lower priority. If
SCHED_IDLE is selected, the nice value is preserved and the Windows
priority is set to IDLE_PRIORITY_CLASS. If SCHED_FIFO or SCHED_RR is
selected, the nice value is preserved and the Windows priority is set
according to the realtime priority.
If the SCHED_RESET_ON_FORK flag is set, SCHED_FIFO and SCHED_RR are
reset to SCHED_OTHER and negative nice values are reset to zero in
each child process created with fork(2).
Note: Windows does not offer alternative scheduling policies so
this could only emulate API behavior.
- If SCHED_FIFO or SCHED_RR is selected, the /proc/<PID>/stat field
'(18) priority' is now set to the negated sched_policy minus one.
If SCHED_IDLE is selected, this field is set to 39. The '(19) nice'
field is now set to the originally requested nice value.
- Raise maximum pid from 65536 to 4194304 to account for scenarios
with lots of CPUs and lots of tasks.
Addresses: https://cygwin.com/pipermail/cygwin/2024-December/256927.html