Commit Graph

2364 Commits

Author SHA1 Message Date
Saúl Ibarra Corretgé
20fe7f9bc7 Now working on v0.10.31 2014-12-09 19:49:50 +01:00
Saúl Ibarra Corretgé
5a63f5e954 2014.12.10, Version 0.10.30 (Stable)
Changes since version 0.10.29:

* linux: fix sigmask size arg in epoll_pwait() call (Ben Noordhuis)

* linux: handle O_NONBLOCK != SOCK_NONBLOCK case (Helge Deller)

* doc: update project links (Ben Noordhuis)

* windows: fix compilation of tests (Marc Schlaich)

* unix: add flag for blocking SIGPROF during poll (Ben Noordhuis)

* unix, windows: add uv_loop_configure() function (Ben Noordhuis)

* win: keep a reference to AFD_POLL_INFO in cancel poll (Marc Schlaich)
2014-12-09 19:49:43 +01:00
schlamar
cd894521dd win: keep a reference to AFD_POLL_INFO in cancel poll 2014-12-09 08:49:59 +01:00
Ben Noordhuis
9da5fd443e unix, windows: add uv_loop_configure() function
The only supported option right now is UV_LOOP_BLOCK_SIGNAL, which only
supports the SIGPROF signal and only on UNIX platforms.  So yes, it is
kind of limited right now.  But everything has to start somewhere.

Refs strongloop/strong-agent#3 and strongloop-internal/scrum-cs#37.

PR-URL: https://github.com/libuv/libuv/pull/15
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2014-12-05 17:39:43 +01:00
Ben Noordhuis
2daf9448b1 unix: add flag for blocking SIGPROF during poll
Add a per-event loop flag for blocking SIGPROF signals when polling for
events.

The motivation for this addition is to reduce the number of wakeups and
subsequent clock_gettime() system calls when using a sampling profiler.

On Linux, this switches from epoll_wait() to epoll_pwait() when enabled.
Other platforms bracket the poll syscall with pthread_sigmask() calls.

Refs strongloop/strong-agent#3 and strongloop-internal/scrum-cs#37.

PR-URL: https://github.com/libuv/libuv/pull/15
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2014-12-05 17:38:31 +01:00
schlamar
0bcac64512 windows: fix compilation of tests 2014-11-26 08:32:59 +01:00
Ben Noordhuis
fa35193bb1 doc: update project links
This is like commit 7ce1113 from the v1.x branch but for the v0.10
branch.  The project home has moved, update the links in the README.
2014-11-25 17:20:34 +01:00
Helge Deller
5672bbd68a linux: handle O_NONBLOCK != SOCK_NONBLOCK case
linux-syscalls.h assumes that on all Linux platforms the value
of O_NONBLOCK is the same as SOCK_NONBLOCK.
This commit fixes it, as it is at least not true for hppa, and
resolves #1442.

Signed-off-by: Luca Bruno <lucab@debian.org>
2014-11-25 17:16:22 +01:00
Ben Noordhuis
b705b53edd linux: fix sigmask size arg in epoll_pwait() call
sizeof(sigset_t) = 128 whereas the kernel expects 8, the size of a long.

It made the system call fail with EINVAL when a non-NULL sigset was
passed in.  Fortunately, it's academic because there is just one call
site and it passes in NULL.

Fixes libuv/libuv#4.
2014-11-25 02:00:51 +01:00
Saúl Ibarra Corretgé
39a5728dd9 Now working on v0.10.30 2014-10-21 01:01:08 +02:00
Saúl Ibarra Corretgé
2d728542d3 2014.10.21, Version 0.10.29 (Stable)
Changes since version 0.10.28:

* darwin: allocate enough space for select() hack (Fedor Indutny)

* linux: try epoll_pwait if epoll_wait is missing (Michael Hudson-Doyle)

* windows: map ERROR_INVALID_DRIVE to UV_ENOENT (Saúl Ibarra Corretgé)
2014-10-21 01:01:03 +02:00
Saúl Ibarra Corretgé
5e507159c9 windows: map ERROR_INVALID_DRIVE to UV_ENOENT
Backport c44f264641 for v0.10 branch.
2014-10-21 00:23:48 +02:00
Michael Hudson-Doyle
ef7b783d8d linux: try epoll_pwait if epoll_wait is missing
It seems that epoll_wait is implemented in glibc in terms of epoll_pwait and
new architectures (like arm64) do not implement the epoll_wait syscall at all.
So if epoll_wait errors with ENOSYS, just call epoll_pwait.

This is a backport of 861de3d71d for v0.10
branch.
2014-10-20 23:40:28 +02:00
Fedor Indutny
c60d6af011 darwin: allocate enough space for select() hack
`fd_set`s are way too small for `select()` hack when stream's fd is
bigger than 1023. Make `fd_set`s a part of `uv__stream_select_t`
structure.

fix #1461

Conflicts:
	src/unix/stream.c
2014-09-08 09:09:21 +01:00
Timothy J Fontaine
71b7128987 Now working on v0.10.29 2014-07-31 09:29:01 -07:00
Timothy J Fontaine
9c14b616f5 2014.07.32, Version 0.10.28 (Stable)
Changes since version 0.10.27:

* windows: fix handling closed socket while poll handle is closing (Saúl
  Ibarra Corretgé)

* unix: return system error on EAI_SYSTEM (Saúl Ibarra Corretgé)

* unix: fix bogus structure field name (Saúl Ibarra Corretgé)

* darwin: invoke `mach_timebase_info` only once (Fedor Indutny)
2014-07-31 09:28:58 -07:00
Fedor Indutny
211bf4ec37 darwin: invoke mach_timebase_info only once
According to @aktau, the call to `mach_timebase_info` costs 90% of the
total execution time of `uv_hrtime()`. The result of the call is static
on all existing platforms, so there is no need in invoking it multiple
times.

Signed-off-by: Fedor Indutny <fedor@indutny.com>
2014-06-25 01:32:05 +04:00
Saúl Ibarra Corretgé
58f87691a4 unix: fix bogus structure field name 2014-06-19 09:12:52 +02:00
Saúl Ibarra Corretgé
dd893814ad unix: return system error on EAI_SYSTEM 2014-06-18 01:18:55 +02:00
Saúl Ibarra Corretgé
12bb46c095 windows: fix handling closed socket while poll handle is closing
fixes #1278

(backport from master for v0.10 branch)
2014-06-17 20:16:43 +02:00
Fedor Indutny
c38e97ee4d test: fix EPIPE race in spawn_closed_process_io
The just created stdin should not be closed by a child process before
writing to it, otherwise EPIPE happens.
2014-06-09 08:47:18 -07:00
Timothy J Fontaine
4f8d4a0135 Now working on v0.10.28 2014-05-01 09:23:46 -07:00
Timothy J Fontaine
6e24ce23b1 2014.05.02, Version 0.10.27 (Stable)
Changes since version 0.10.26:

* windows: fix console signal handler refcount (Saúl Ibarra Corretgé)

* win: always leave crit section in get_proc_title (Fedor Indutny)
2014-05-01 09:23:46 -07:00
Timothy J Fontaine
4a67d8cc0e build: add vc-set-2012 label 2014-04-14 10:07:33 -07:00
Fedor Indutny
ffb49220cf win: always leave crit section in get_proc_title
fix #1235
2014-04-14 20:49:15 +04:00
Fedor Indutny
23d130b209 Revert "inet: allow scope in uv_inet_pton ip6 check"
This reverts commit d30e3ab65a, because it
is a new feature!
2014-04-14 15:13:20 +04:00
Fedor Indutny
d30e3ab65a inet: allow scope in uv_inet_pton ip6 check
Note that isn't actually parsing it, since the output value is a
`struct in6_addr`.

see https://github.com/joyent/node/issues/7395
2014-04-14 12:45:42 +04:00
Saúl Ibarra Corretgé
b9d5396a40 windows: fix console signal handler refcount
Backport of 0c726e7 from master
2014-04-12 10:09:40 +02:00
Fedor Indutny
6855205ba5
Now working on v0.10.27
Signed-off-by: Fedor Indutny <fedor@indutny.com>
2014-04-07 15:28:59 +04:00
Fedor Indutny
d864907611
2014.04.07, Version 0.10.26 (Stable)
Changes since version 0.10.25:

* process: don't close stdio fds during spawn (Tonis Tiigi)

* build, windows: do not fail on Windows SDK Prompt (Marc Schlaich)

* build, windows: fix x64 configuration issue (Marc Schlaich)

* win: fix buffer leak on error in pipe.c (Fedor Indutny)

* kqueue: invalidate fd in uv_fs_event_t (Fedor Indutny)

* linux: always deregister closing fds from epoll (Geoffry Song)

* error: add ENXIO for O_NONBLOCK FIFO open() (Fedor Indutny)

Signed-off-by: Fedor Indutny <fedor@indutny.com>
2014-04-07 15:26:30 +04:00
Fedor Indutny
295882ed32 error: add EMLINK mapping
fix joyent/node#7307
2014-04-03 16:37:25 +04:00
Tonis Tiigi
fd77a5d6c6 process: don't close stdio fds during spawn
This is needed when closed stdio fd is reused for uv_spawn pipe.
Fixes #1211
2014-03-26 20:35:08 +04:00
Marc Schlaich
cd6db8bbef build, windows: do not fail on Windows SDK Prompt
Backported from master 2f6d4b4
2014-03-20 23:15:06 +01:00
Marc Schlaich
aa2fbb364a build, windows: fixed x64 configuration issue
Backported from master 8010bf9
2014-03-20 23:11:11 +01:00
Fedor Indutny
4ac8c424ea win: fix buffer leak on error in pipe.c 2014-03-13 00:48:55 +04:00
Fedor Indutny
9b38c01b54 kqueue: invalidate fd in uv_fs_event_t
Invalidate file descriptor when closing `uv_fs_event_t` handle. Note
that `uv__io_stop` is just removing `fd` from `loop->watchers` and not
actually invalidating all consequent events in a `kevent()` results.

fix joyent/node#1101
2014-03-11 02:44:13 +04:00
Geoffry Song
84f305915f linux: always deregister closing fds from epoll
If the same file description is open in two different processes, then
closing the file descriptor is not sufficient to deregister it from the
epoll instance (as described in epoll(7)), resulting in spurious events
that cause the event loop to spin repeatedly. So always explicitly
deregister it.

Fixes #1099.

Conflicts:
	test/test-spawn.c
2014-03-10 17:27:36 +04:00
Fedor Indutny
4f72f2145b error: add ENXIO for O_NONBLOCK FIFO open()
When opening FIFO with `O_NONBLOCK` flag, `ENXIO` could be returned if
the readable side hasn't yet opened this FIFO.
2014-03-06 20:36:07 +04:00
Fedor Indutny
c0c9480e02 process: remove debug perror() prints
fix #1128
2014-03-03 21:04:52 +04:00
Saúl Ibarra Corretgé
6f98f4efd1 unix, windows: map ERANGE errno
This is a backport of 2f58bb6 from the master branch
2014-02-25 10:48:26 +01:00
Saúl Ibarra Corretgé
10f9120d78 errno: map EFBIG, ENOPROTOOPT and ETXTBSY
This is a backport of:
107be2bed3
4a023fc078
aaaefe32ca
2014-02-24 12:57:28 +01:00
Timothy J Fontaine
714bec14f6 Now working on v0.10.26 2014-02-18 13:01:54 -08:00
Timothy J Fontaine
d778dc5885 2014.02.19, Version 0.10.25 (Stable)
Changes since version 0.10.24:

* stream: start thread after assignments (Oguz Bastemur)

* unix: correct error when calling uv_shutdown twice (Saúl Ibarra
  Corretgé)

* windows: freeze in uv_tcp_endgame (Alexis Campailla)

* sunos: handle rearm errors (Fedor Indutny)
2014-02-18 13:01:51 -08:00
Fedor Indutny
703a9e601e sunos: handle rearm errors
fix #1078
2014-02-19 00:14:13 +04:00
Alexis Campailla
4f913b669a windows: freeze in uv_tcp_endgame
The event_handle field of unused accept requests was not being
initialized properly. As a result, uv_tcp_endgame would try to close
an invalid handle and this could lead to unexpected behavior.

This fixes node.js test test-cluster-disconnect.js on Windows.
2014-02-18 19:16:47 +01:00
Saúl Ibarra Corretgé
6e2021ca11 unix: correct error when calling uv_shutdown twice
This is a backport of a284b90 for v0.10 branch
2014-02-15 16:55:06 +01:00
Oguz Bastemur
a6ff04d2c4 stream: start thread after assignments
Changed the order of the member assignments since the thread
may start before the parameters are assigned. This especially
happens when the osx scheduler is very busy.
2014-01-31 20:53:06 +04:00
Timothy J Fontaine
79ffe2fb95 Now working on v0.10.25 2014-01-29 09:41:41 -08:00
Timothy J Fontaine
aecd296b6b 2014.01.30, Version 0.10.24 (Stable)
Changes since version 0.10.23:

* linux: move sscanf() out of the assert() (Trevor Norris)

* linux: fix C99/C++ comment (Fedor Indutny)
2014-01-29 09:41:36 -08:00
Fedor Indutny
3e2446d18d linux: fix C99/C++ comment 2014-01-29 17:01:35 +04:00