ba780231 | 16-Oct-2018 |
Ben Noordhuis |
unix,win: handle zero-sized allocations uniformly `malloc(0)` and `realloc(p, 0)` can either return NULL or a unique pointer. Make our custom allocator return NULL for consistency across
unix,win: handle zero-sized allocations uniformly `malloc(0)` and `realloc(p, 0)` can either return NULL or a unique pointer. Make our custom allocator return NULL for consistency across platforms and libcs. PR-URL: https://github.com/libuv/libuv/pull/2038 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|
6e23a366 | 15-Oct-2018 |
cjihrig |
unix: remove unnecessary linebreaks As a requested style nit, remove two unnecessary line breaks. PR-URL: https://github.com/libuv/libuv/pull/2039 Reviewed-By: Ben Noordhuis <in
unix: remove unnecessary linebreaks As a requested style nit, remove two unnecessary line breaks. PR-URL: https://github.com/libuv/libuv/pull/2039 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
show more ...
|
5fb95172 | 15-Oct-2018 |
cjihrig |
unix,win: make uv_interface_addresses() consistent This commit does a few things to make the function more consistent across platforms: - Initialize the output parameters before
unix,win: make uv_interface_addresses() consistent This commit does a few things to make the function more consistent across platforms: - Initialize the output parameters before everything else. - Return early if there are no interfaces instead of performing zero-sized allocations. - Add a missing memory deallocation. Refs: https://github.com/libuv/libuv/pull/2035 PR-URL: https://github.com/libuv/libuv/pull/2039 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
show more ...
|
69e4af15 | 14-Oct-2018 |
cjihrig |
unix: restore skipping of phys_addr copy Prior to https://github.com/libuv/libuv/pull/1999, uv_interface_addresses() did not populate the phys_addr field on Cygwin or MinGW. This com
unix: restore skipping of phys_addr copy Prior to https://github.com/libuv/libuv/pull/1999, uv_interface_addresses() did not populate the phys_addr field on Cygwin or MinGW. This commit restores that behavior, which was mistakenly changed. Fixes: https://github.com/libuv/libuv/issues/2034 PR-URL: https://github.com/libuv/libuv/pull/2035 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|
4b7f3686 | 26-Sep-2018 |
Jameson Nash |
doc: add vtjnash to maintainers PR-URL: https://github.com/libuv/libuv/pull/2015 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
doc: add vtjnash to maintainers PR-URL: https://github.com/libuv/libuv/pull/2015 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Refael Ackermann <refack@gmail.com>
show more ...
|
1cead826 | 09-Oct-2018 |
Carlo Marcelo Arenas Belón |
zos: avoid UB with NULL pointer arithmetic PR-URL: https://github.com/libuv/libuv/pull/2017 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.co
zos: avoid UB with NULL pointer arithmetic PR-URL: https://github.com/libuv/libuv/pull/2017 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: John Barboza <jbarboza@ca.ibm.com>
show more ...
|
dc2476cd | 02-Oct-2018 |
Carlo Marcelo Arenas Belón |
test: avoid memory leak for test_output PR-URL: https://github.com/libuv/libuv/pull/2017 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
test: avoid memory leak for test_output PR-URL: https://github.com/libuv/libuv/pull/2017 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: John Barboza <jbarboza@ca.ibm.com>
show more ...
|
1d1969ad | 07-Sep-2018 |
Samuel Thibault |
unix: add support for GNU/Hurd PR-URL: https://github.com/libuv/libuv/pull/2008 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Bug-Debian: https://bugs.debian.org/881882 |
c5d2bf12 | 25-Jul-2018 |
Svante Signell |
unix: add missing link dependency on kFreeBSD Link to `freebsd-glue` to get `bsd_sendfile`. PR-URL: https://github.com/libuv/libuv/pull/2008 Reviewed-By: Ben Noordhuis <info@bno
unix: add missing link dependency on kFreeBSD Link to `freebsd-glue` to get `bsd_sendfile`. PR-URL: https://github.com/libuv/libuv/pull/2008 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Bug-Debian: https://bugs.debian.org/904503
show more ...
|
4772d440 | 10-Aug-2018 |
hitesh |
win,doc: path encoding in uv_fs_XX is UTF-8 Fixes: https://github.com/libuv/libuv/issues/1554 PR-URL: https://github.com/libuv/libuv/pull/1943 Reviewed-By: Bartosz Sosnowski <bartosz
win,doc: path encoding in uv_fs_XX is UTF-8 Fixes: https://github.com/libuv/libuv/issues/1554 PR-URL: https://github.com/libuv/libuv/pull/1943 Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
show more ...
|
b56d279b | 28-Sep-2018 |
Brad King |
unix: do not require PATH_MAX to be defined Some platforms (e.g. GNU/Hurd) do not define PATH_MAX. Add a few other variants and a fallback constant. Also use alternatives where possibl
unix: do not require PATH_MAX to be defined Some platforms (e.g. GNU/Hurd) do not define PATH_MAX. Add a few other variants and a fallback constant. Also use alternatives where possible: * For readlink(), use lstat() to read the length of the link first. If it is not a symlink, report EINVAL before trying to allocate. If the size reports as zero, fall back one of the PATH_MAX variants. * For realpath(), POSIX 2008 allows us to pass a NULL buffer to tell it to malloc() internally. This patch was inspired by downstream patches in Debian packaging. PR-URL: https://github.com/libuv/libuv/pull/2008 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Bug-Debian: https://bugs.debian.org/897061 Bug-Debian: https://bugs.debian.org/909011 Bug-Ubuntu: https://bugs.launchpad.net/bugs/1792647 Inspired-by: Mauricio Faria de Oliveira <mfo@canonical.com> Inspired-by: Samuel Thibault <sthibault@debian.org>
show more ...
|
0c2b3de3 | 08-Oct-2018 |
cjihrig |
Now working on version 1.23.3 Fixes: https://github.com/libuv/libuv/issues/2024 |
0d8ec6e9 | 08-Oct-2018 |
cjihrig |
Add SHA to ChangeLog |
34c12788 | 08-Oct-2018 |
cjihrig |
2018.10.09, Version 1.23.2 (Stable) Changes since version 1.23.1: * unix: return 0 retrieving rss on cygwin (cjihrig) * unix: initialize uv_interface_address_t.phys_addr (c
2018.10.09, Version 1.23.2 (Stable) Changes since version 1.23.1: * unix: return 0 retrieving rss on cygwin (cjihrig) * unix: initialize uv_interface_address_t.phys_addr (cjihrig) * test: handle uv_os_setpriority() windows edge case (cjihrig) * tty, win: fix read stop for raw mode (Bartosz Sosnowski) * Revert "Revert "unix,fs: fix for potential partial reads/writes"" (Jameson Nash) * unix,readv: always permit partial reads to return (Jameson Nash) * win,tty: fix uv_tty_close() (Bartosz Sosnowski) * doc: remove extraneous "on" (Ben Noordhuis) * unix,win: fix threadpool race condition (Anna Henningsen) * unix: rework thread barrier implementation (Ben Noordhuis) * aix: switch to libuv's own thread barrier impl (Ben Noordhuis) * unix: signal done to last thread barrier waiter (Ben Noordhuis) * test: add uv_barrier_wait serial thread test (Ali Ijaz Sheikh) * unix: optimize uv_fs_readlink() memory allocation (Ben Noordhuis) * win: remove req.c and other cleanup (Carlo Marcelo Arenas Belón) * aix: don't EISDIR on read from directory fd (Ben Noordhuis)
show more ...
|
25a3894c | 08-Oct-2018 |
Ben Noordhuis |
aix: don't EISDIR on read from directory fd Remove the artificial EISDIR that was generated when trying to uv_fs_read() from a file descriptor that refers to a directory. We don
aix: don't EISDIR on read from directory fd Remove the artificial EISDIR that was generated when trying to uv_fs_read() from a file descriptor that refers to a directory. We don't do that on the BSDs either (where reading from a directory is allowed) and it introduces an extra stat() call for every read. Refs: https://github.com/libuv/libuv/pull/2023#issuecomment-427759265 PR-URL: https://github.com/libuv/libuv/pull/2025 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
show more ...
|
672b96fa | 01-Jun-2018 |
Carlo Marcelo Arenas Belón |
win: remove req.c and other cleanup PR-URL: https://github.com/libuv/libuv/pull/2018 Reviewed-By: Jameson Nash <vtjnash@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com
win: remove req.c and other cleanup PR-URL: https://github.com/libuv/libuv/pull/2018 Reviewed-By: Jameson Nash <vtjnash@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
show more ...
|
5ecc97ee | 08-Oct-2018 |
Ben Noordhuis |
unix: optimize uv_fs_readlink() memory allocation Libuv was allocating PATH_MAX+1 bytes to reserve space for the trailing nul byte. On platforms like Linux, where PATH_MAX is fi
unix: optimize uv_fs_readlink() memory allocation Libuv was allocating PATH_MAX+1 bytes to reserve space for the trailing nul byte. On platforms like Linux, where PATH_MAX is fixed at 4096, that meant we were allocating two pages (as the page size is normally also 4096), even though the second page was almost never used. Change that to allocate PATH_MAX bytes and only resize when readlink() actually writes that many bytes, which is practically never. PR-URL: https://github.com/libuv/libuv/pull/2009 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|
3af6f172 | 08-Oct-2018 |
Ali Ijaz Sheikh |
test: add uv_barrier_wait serial thread test Ensure that uv_barrier_wait returns positive only after all threads have exited the barrier. If this value is returned too early and the barr
test: add uv_barrier_wait serial thread test Ensure that uv_barrier_wait returns positive only after all threads have exited the barrier. If this value is returned too early and the barrier is destroyed prematurely, then this test may see a crash. PR-URL: https://github.com/libuv/libuv/pull/2019 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|
49b8a9f1 | 08-Oct-2018 |
Ben Noordhuis |
unix: signal done to last thread barrier waiter Libuv's own thread barrier implementation signaled completion to the first waiter that saw the threshold being reached, contrary to what
unix: signal done to last thread barrier waiter Libuv's own thread barrier implementation signaled completion to the first waiter that saw the threshold being reached, contrary to what some native pthreads barrier implementations do, which is to signal it to the _last_ waiter. Libuv's behavior is not strictly non-conforming but it's inconvenient because it means this snippet (that appears in the libuv documentation) has a race condition in it: if (uv_barrier_wait(&barrier) > 0) uv_barrier_destroy(&barrier); // can still have waiters This issue was discovered and fixed by Ali Ijaz Sheikh, a.k.a @ofrobots, but some refactoring introduced conflicts in his pull request and I didn't have the heart to ask him to redo it from scratch. :-) PR-URL: https://github.com/libuv/libuv/pull/2019 Refs: https://github.com/libuv/libuv/pull/2003 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|
a3a601c5 | 08-Oct-2018 |
Ben Noordhuis |
aix: switch to libuv's own thread barrier impl It was pointed out that pthread_barrier_wait() behaves slightly different from other platforms. Switch to libuv's own thread barrier fo
aix: switch to libuv's own thread barrier impl It was pointed out that pthread_barrier_wait() behaves slightly different from other platforms. Switch to libuv's own thread barrier for uniformity of behavior. Perhaps we'll do that for more platforms in the future. PR-URL: https://github.com/libuv/libuv/pull/2019 Refs: https://github.com/libuv/libuv/pull/2003#issuecomment-426471646 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|
56702e08 | 08-Oct-2018 |
Ben Noordhuis |
unix: rework thread barrier implementation * dissolve include/uv/pthread-barrier.h * use libuv mutexes and condition variables, not pthreads's * drive-by cleanup and simpli
unix: rework thread barrier implementation * dissolve include/uv/pthread-barrier.h * use libuv mutexes and condition variables, not pthreads's * drive-by cleanup and simplification enabled by the first two items PR-URL: https://github.com/libuv/libuv/pull/2019 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|
daf04e83 | 04-Oct-2018 |
Anna Henningsen |
unix,win: fix threadpool race condition 90891b4232e91dbd7a2e2077e4d23d16a374b41d introduced a race condition when accessing `slow_io_work_running` – it is being increased and later d
unix,win: fix threadpool race condition 90891b4232e91dbd7a2e2077e4d23d16a374b41d introduced a race condition when accessing `slow_io_work_running` – it is being increased and later decreased as part of the worker thread loop, but was accessed with different mutexes during these operations. This fixes the race condition by making sure both accesses are protected through the global `mutex` of `threadpool.c`. This fixes a number of flaky Node.js tests. Refs: https://github.com/libuv/libuv/pull/1845 Refs: https://github.com/nodejs/reliability/issues/18 Refs: https://github.com/nodejs/node/issues/23089 Refs: https://github.com/nodejs/node/issues/23067 Refs: https://github.com/nodejs/node/issues/23066 Refs: https://github.com/nodejs/node/issues/23219 PR-URL: https://github.com/libuv/libuv/pull/2021 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
show more ...
|
6781db5c | 01-Oct-2018 |
Ben Noordhuis |
doc: remove extraneous "on" Fixes: https://github.com/libuv/libuv/issues/2000 PR-URL: https://github.com/libuv/libuv/pull/2010 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Review
doc: remove extraneous "on" Fixes: https://github.com/libuv/libuv/issues/2000 PR-URL: https://github.com/libuv/libuv/pull/2010 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jamie Davis <davisjam@vt.edu> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|
ee87f344 | 27-Sep-2018 |
Bartosz Sosnowski |
win,tty: fix uv_tty_close() Under some condition, uv_tty_close() would not stop console reads. This fixes that issue by first stopping read, then closing the handle. Fixes:
win,tty: fix uv_tty_close() Under some condition, uv_tty_close() would not stop console reads. This fixes that issue by first stopping read, then closing the handle. Fixes: https://github.com/nodejs/node/issues/22999 PR-URL: https://github.com/libuv/libuv/pull/2005 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
show more ...
|
60abdbae | 13-Feb-2018 |
Jameson Nash |
unix,readv: always permit partial reads to return For simplicity and predictability (since the user must handle the retry anyways), always emit exactly one readv/pread/preadv syscall and
unix,readv: always permit partial reads to return For simplicity and predictability (since the user must handle the retry anyways), always emit exactly one readv/pread/preadv syscall and return that result to the user. By contrast, write needs to preserve order, so it needs to keep retrying the operation until it finishes before retiring the req from the queue. Fixes: https://github.com/nodejs/node/issues/16601 PR-URL: https://github.com/libuv/libuv/pull/1742 Refs: https://github.com/libuv/libuv/pull/640 Refs: https://github.com/libuv/libuv/issues/1720 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|