2024-01-21 13:24:52 +01:00
|
|
|
What's new:
|
|
|
|
-----------
|
|
|
|
|
|
|
|
- New API call: getlocalename_l.
|
|
|
|
|
2024-01-23 21:49:48 +01:00
|
|
|
- New API calls: fdclosedir, posix_getdents.
|
2024-01-23 13:41:14 +01:00
|
|
|
|
2024-01-31 19:54:13 +01:00
|
|
|
- New API call: setproctitle.
|
|
|
|
|
2024-02-16 20:44:31 +01:00
|
|
|
- New API call: timespec_get.
|
|
|
|
|
2024-03-11 12:53:50 +01:00
|
|
|
- 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).
|
|
|
|
|
2024-11-19 00:11:24 -08:00
|
|
|
- New libaio.a provided for projects checking for POSIX aio support
|
|
|
|
by looking for this library at configure time.
|
|
|
|
|
2024-12-10 22:26:50 +01:00
|
|
|
- cygpath -r option allows to generate all Windows paths with root-local
|
|
|
|
path prefix \\?\.
|
|
|
|
|
2024-01-21 13:24:52 +01:00
|
|
|
|
|
|
|
What changed:
|
|
|
|
-------------
|
2024-01-30 20:49:20 +01:00
|
|
|
|
|
|
|
- ps -f now prints the commandline rather than the full path to the
|
|
|
|
executable.
|
2024-03-20 12:31:12 +01:00
|
|
|
|
2024-03-20 17:45:41 +01:00
|
|
|
- Drop support for NT4 and Samba < 3.0.22.
|
2024-03-20 14:32:49 +01:00
|
|
|
|
|
|
|
- Now that SMBv1 is ultimately deprecated and not installed by default
|
2024-03-23 22:32:16 +01:00
|
|
|
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.
|
2024-03-24 20:06:13 +01:00
|
|
|
|
|
|
|
- Expose //tsclient (Microsoft Terminal Services) shares as well as
|
|
|
|
//wsl$ (Plan 9 Network Provider) shares, i. e., WSL installation
|
|
|
|
root dirs.
|
Cygwin: pipe: Switch pipe mode to blocking mode by default
Previously, cygwin read pipe used non-blocking mode although non-
cygwin app uses blocking-mode by default. Despite this requirement,
if a cygwin app is executed from a non-cygwin app and the cygwin
app exits, read pipe remains on non-blocking mode because of the
commit fc691d0246b9. Due to this behaviour, the non-cygwin app
cannot read the pipe correctly after that. Similarly, if a non-
cygwin app is executed from a cygwin app and the non-cygwin app
exits, the read pipe mode remains on blocking mode although cygwin
read pipe should be non-blocking mode.
These bugs were provoked by pipe mode toggling between cygwin and
non-cygwin apps. To make management of pipe mode simpler, this
patch has re-designed the pipe implementation. In this new
implementation, both read and write pipe basically use only blocking
mode and the behaviour corresponding to the pipe mode is simulated
in raw_read() and raw_write(). Only when NtQueryInformationFile
(FilePipeLocalInformation) fails for some reasons, the raw_read()/
raw_write() cannot simulate non-blocking access. Therefore, the pipe
mode is temporarily changed to non-blocking mode.
Moreover, because the fact that NtSetInformationFile() in
set_pipe_non_blocking(true) fails with STATUS_PIPE_BUSY if the pipe
is not empty has been found, query handle is not necessary anymore.
This allows the implementation much simpler than before.
Addresses: https://github.com/git-for-windows/git/issues/5115
Fixes: fc691d0246b9 ("Cygwin: pipe: Make sure to set read pipe non-blocking for cygwin apps.");
Reported-by: isaacag, Johannes Schindelin <Johannes.Schindelin@gmx.de>
Reviewed-by: Corinna Vinschen <corinna@vinschen.de>, Ken Brown <kbrown@cornell.edu>
Signed-off-by: Takashi Yano <takashi.yano@nifty.ne.jp>
2024-09-05 11:36:27 +09:00
|
|
|
|
|
|
|
- Redesign pipe handling to minimize toggling blocking mode.
|
|
|
|
The query_hdl stuff is no longer needed in new implementation.
|
2024-10-13 07:41:40 +09:00
|
|
|
|
|
|
|
- Now using AVX/AVX2/AVX-512 instructions in signal handler does not
|
|
|
|
break their context.
|
2024-11-27 10:26:38 +01:00
|
|
|
|
|
|
|
- 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.
|
2024-11-27 18:54:37 +01:00
|
|
|
|
|
|
|
- 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.
|
2024-11-29 18:41:12 +01:00
|
|
|
|
|
|
|
- sched_setscheduler(2) now emulates changes between SCHED_OTHER,
|
2024-12-09 12:14:07 +01:00
|
|
|
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
|
2024-12-03 15:42:50 +01:00
|
|
|
selected, the nice value is preserved and the Windows priority is set
|
2024-12-09 12:14:07 +01:00
|
|
|
according to the realtime priority.
|
2024-11-29 18:41:12 +01:00
|
|
|
Note: Windows does not offer alternative scheduling policies so
|
|
|
|
this could only emulate API behavior.
|