node-linux-arm64 18.18.0 → 18.18.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/bin/node +0 -0
- package/include/node/node_version.h +1 -1
- package/include/node/uv/darwin.h +3 -3
- package/include/node/uv/errno.h +1 -18
- package/include/node/uv/linux.h +1 -1
- package/include/node/uv/stdint-msvc2008.h +247 -0
- package/include/node/uv/threadpool.h +1 -1
- package/include/node/uv/unix.h +24 -25
- package/include/node/uv/version.h +2 -2
- package/include/node/uv/win.h +17 -20
- package/include/node/uv.h +19 -81
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
</tr>
|
|
10
10
|
<tr>
|
|
11
11
|
<td>
|
|
12
|
+
<a href="#18.18.1">18.18.1</a><br/>
|
|
12
13
|
<a href="#18.18.0">18.18.0</a><br/>
|
|
13
14
|
<a href="#18.17.1">18.17.1</a><br/>
|
|
14
15
|
<a href="#18.17.0">18.17.0</a><br/>
|
|
@@ -60,6 +61,29 @@
|
|
|
60
61
|
* [io.js](CHANGELOG_IOJS.md)
|
|
61
62
|
* [Archive](CHANGELOG_ARCHIVE.md)
|
|
62
63
|
|
|
64
|
+
<a id="18.18.1"></a>
|
|
65
|
+
|
|
66
|
+
## 2023-10-10, Version 18.18.1 'Hydrogen' (LTS), @richardlau
|
|
67
|
+
|
|
68
|
+
### Notable Changes
|
|
69
|
+
|
|
70
|
+
This release addresses some regressions that appeared in Node.js 18.18.0:
|
|
71
|
+
|
|
72
|
+
* (Windows) FS can not handle certain characters in file name [#48673](https://github.com/nodejs/node/issues/48673)
|
|
73
|
+
* 18 and 20 node images give error - Text file busy (after re-build images) [nodejs/docker-node#1968](https://github.com/nodejs/docker-node/issues/1968)
|
|
74
|
+
* libuv update in 18.18.0 breaks webpack's thread-loader [#49911](https://github.com/nodejs/node/issues/49911)
|
|
75
|
+
|
|
76
|
+
The libuv 1.45.0 and 1.46.0 updates that were released in Node.js 18.18.0 have been temporarily reverted.
|
|
77
|
+
|
|
78
|
+
### Commits
|
|
79
|
+
|
|
80
|
+
* \[[`3e3a75cc46`](https://github.com/nodejs/node/commit/3e3a75cc46)] - _**Revert**_ "**build**: sync libuv header change" (Richard Lau) [#50036](https://github.com/nodejs/node/pull/50036)
|
|
81
|
+
* \[[`14ece2c479`](https://github.com/nodejs/node/commit/14ece2c479)] - _**Revert**_ "**deps**: upgrade to libuv 1.45.0" (Richard Lau) [#50036](https://github.com/nodejs/node/pull/50036)
|
|
82
|
+
* \[[`022352acbe`](https://github.com/nodejs/node/commit/022352acbe)] - _**Revert**_ "**deps**: upgrade to libuv 1.46.0" (Richard Lau) [#50036](https://github.com/nodejs/node/pull/50036)
|
|
83
|
+
* \[[`d9f138189c`](https://github.com/nodejs/node/commit/d9f138189c)] - _**Revert**_ "**deps**: add missing thread-common.c in uv.gyp" (Richard Lau) [#50036](https://github.com/nodejs/node/pull/50036)
|
|
84
|
+
* \[[`7a3e1ffbb8`](https://github.com/nodejs/node/commit/7a3e1ffbb8)] - **fs**: make sure to write entire buffer (Robert Nagy) [#49211](https://github.com/nodejs/node/pull/49211)
|
|
85
|
+
* \[[`04cba95a67`](https://github.com/nodejs/node/commit/04cba95a67)] - **test**: add `tmpdir.resolve()` (Livia Medeiros) [#49079](https://github.com/nodejs/node/pull/49079)
|
|
86
|
+
|
|
63
87
|
<a id="18.18.0"></a>
|
|
64
88
|
|
|
65
89
|
## 2023-09-18, Version 18.18.0 'Hydrogen' (LTS), @ruyadorno
|
package/bin/node
CHANGED
|
Binary file
|
package/include/node/uv/darwin.h
CHANGED
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
void* cf_state; \
|
|
41
41
|
uv_mutex_t cf_mutex; \
|
|
42
42
|
uv_sem_t cf_sem; \
|
|
43
|
-
|
|
43
|
+
void* cf_signals[2]; \
|
|
44
44
|
|
|
45
45
|
#define UV_PLATFORM_FS_EVENT_FIELDS \
|
|
46
46
|
uv__io_t event_watcher; \
|
|
@@ -48,8 +48,8 @@
|
|
|
48
48
|
int realpath_len; \
|
|
49
49
|
int cf_flags; \
|
|
50
50
|
uv_async_t* cf_cb; \
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
void* cf_events[2]; \
|
|
52
|
+
void* cf_member[2]; \
|
|
53
53
|
int cf_error; \
|
|
54
54
|
uv_mutex_t cf_mutex; \
|
|
55
55
|
|
package/include/node/uv/errno.h
CHANGED
|
@@ -413,6 +413,7 @@
|
|
|
413
413
|
#elif defined(__APPLE__) || \
|
|
414
414
|
defined(__DragonFly__) || \
|
|
415
415
|
defined(__FreeBSD__) || \
|
|
416
|
+
defined(__FreeBSD_kernel__) || \
|
|
416
417
|
defined(__NetBSD__) || \
|
|
417
418
|
defined(__OpenBSD__)
|
|
418
419
|
# define UV__EHOSTDOWN (-64)
|
|
@@ -456,22 +457,4 @@
|
|
|
456
457
|
# define UV__ESOCKTNOSUPPORT (-4025)
|
|
457
458
|
#endif
|
|
458
459
|
|
|
459
|
-
/* FreeBSD defines ENODATA in /usr/include/c++/v1/errno.h which is only visible
|
|
460
|
-
* if C++ is being used. Define it directly to avoid problems when integrating
|
|
461
|
-
* libuv in a C++ project.
|
|
462
|
-
*/
|
|
463
|
-
#if defined(ENODATA) && !defined(_WIN32)
|
|
464
|
-
# define UV__ENODATA UV__ERR(ENODATA)
|
|
465
|
-
#elif defined(__FreeBSD__)
|
|
466
|
-
# define UV__ENODATA (-9919)
|
|
467
|
-
#else
|
|
468
|
-
# define UV__ENODATA (-4024)
|
|
469
|
-
#endif
|
|
470
|
-
|
|
471
|
-
#if defined(EUNATCH) && !defined(_WIN32)
|
|
472
|
-
# define UV__EUNATCH UV__ERR(EUNATCH)
|
|
473
|
-
#else
|
|
474
|
-
# define UV__EUNATCH (-4023)
|
|
475
|
-
#endif
|
|
476
|
-
|
|
477
460
|
#endif /* UV_ERRNO_H_ */
|
package/include/node/uv/linux.h
CHANGED
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
// ISO C9x compliant stdint.h for Microsoft Visual Studio
|
|
2
|
+
// Based on ISO/IEC 9899:TC2 Committee draft (May 6, 2005) WG14/N1124
|
|
3
|
+
//
|
|
4
|
+
// Copyright (c) 2006-2008 Alexander Chemeris
|
|
5
|
+
//
|
|
6
|
+
// Redistribution and use in source and binary forms, with or without
|
|
7
|
+
// modification, are permitted provided that the following conditions are met:
|
|
8
|
+
//
|
|
9
|
+
// 1. Redistributions of source code must retain the above copyright notice,
|
|
10
|
+
// this list of conditions and the following disclaimer.
|
|
11
|
+
//
|
|
12
|
+
// 2. Redistributions in binary form must reproduce the above copyright
|
|
13
|
+
// notice, this list of conditions and the following disclaimer in the
|
|
14
|
+
// documentation and/or other materials provided with the distribution.
|
|
15
|
+
//
|
|
16
|
+
// 3. The name of the author may be used to endorse or promote products
|
|
17
|
+
// derived from this software without specific prior written permission.
|
|
18
|
+
//
|
|
19
|
+
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
20
|
+
// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
21
|
+
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
|
|
22
|
+
// EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
23
|
+
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
|
24
|
+
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
|
25
|
+
// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
|
26
|
+
// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
|
27
|
+
// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
|
28
|
+
// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
29
|
+
//
|
|
30
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
31
|
+
|
|
32
|
+
#ifndef _MSC_VER // [
|
|
33
|
+
#error "Use this header only with Microsoft Visual C++ compilers!"
|
|
34
|
+
#endif // _MSC_VER ]
|
|
35
|
+
|
|
36
|
+
#ifndef _MSC_STDINT_H_ // [
|
|
37
|
+
#define _MSC_STDINT_H_
|
|
38
|
+
|
|
39
|
+
#if _MSC_VER > 1000
|
|
40
|
+
#pragma once
|
|
41
|
+
#endif
|
|
42
|
+
|
|
43
|
+
#include <limits.h>
|
|
44
|
+
|
|
45
|
+
// For Visual Studio 6 in C++ mode and for many Visual Studio versions when
|
|
46
|
+
// compiling for ARM we should wrap <wchar.h> include with 'extern "C++" {}'
|
|
47
|
+
// or compiler give many errors like this:
|
|
48
|
+
// error C2733: second C linkage of overloaded function 'wmemchr' not allowed
|
|
49
|
+
#ifdef __cplusplus
|
|
50
|
+
extern "C" {
|
|
51
|
+
#endif
|
|
52
|
+
# include <wchar.h>
|
|
53
|
+
#ifdef __cplusplus
|
|
54
|
+
}
|
|
55
|
+
#endif
|
|
56
|
+
|
|
57
|
+
// Define _W64 macros to mark types changing their size, like intptr_t.
|
|
58
|
+
#ifndef _W64
|
|
59
|
+
# if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && _MSC_VER >= 1300
|
|
60
|
+
# define _W64 __w64
|
|
61
|
+
# else
|
|
62
|
+
# define _W64
|
|
63
|
+
# endif
|
|
64
|
+
#endif
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
// 7.18.1 Integer types
|
|
68
|
+
|
|
69
|
+
// 7.18.1.1 Exact-width integer types
|
|
70
|
+
|
|
71
|
+
// Visual Studio 6 and Embedded Visual C++ 4 doesn't
|
|
72
|
+
// realize that, e.g. char has the same size as __int8
|
|
73
|
+
// so we give up on __intX for them.
|
|
74
|
+
#if (_MSC_VER < 1300)
|
|
75
|
+
typedef signed char int8_t;
|
|
76
|
+
typedef signed short int16_t;
|
|
77
|
+
typedef signed int int32_t;
|
|
78
|
+
typedef unsigned char uint8_t;
|
|
79
|
+
typedef unsigned short uint16_t;
|
|
80
|
+
typedef unsigned int uint32_t;
|
|
81
|
+
#else
|
|
82
|
+
typedef signed __int8 int8_t;
|
|
83
|
+
typedef signed __int16 int16_t;
|
|
84
|
+
typedef signed __int32 int32_t;
|
|
85
|
+
typedef unsigned __int8 uint8_t;
|
|
86
|
+
typedef unsigned __int16 uint16_t;
|
|
87
|
+
typedef unsigned __int32 uint32_t;
|
|
88
|
+
#endif
|
|
89
|
+
typedef signed __int64 int64_t;
|
|
90
|
+
typedef unsigned __int64 uint64_t;
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
// 7.18.1.2 Minimum-width integer types
|
|
94
|
+
typedef int8_t int_least8_t;
|
|
95
|
+
typedef int16_t int_least16_t;
|
|
96
|
+
typedef int32_t int_least32_t;
|
|
97
|
+
typedef int64_t int_least64_t;
|
|
98
|
+
typedef uint8_t uint_least8_t;
|
|
99
|
+
typedef uint16_t uint_least16_t;
|
|
100
|
+
typedef uint32_t uint_least32_t;
|
|
101
|
+
typedef uint64_t uint_least64_t;
|
|
102
|
+
|
|
103
|
+
// 7.18.1.3 Fastest minimum-width integer types
|
|
104
|
+
typedef int8_t int_fast8_t;
|
|
105
|
+
typedef int16_t int_fast16_t;
|
|
106
|
+
typedef int32_t int_fast32_t;
|
|
107
|
+
typedef int64_t int_fast64_t;
|
|
108
|
+
typedef uint8_t uint_fast8_t;
|
|
109
|
+
typedef uint16_t uint_fast16_t;
|
|
110
|
+
typedef uint32_t uint_fast32_t;
|
|
111
|
+
typedef uint64_t uint_fast64_t;
|
|
112
|
+
|
|
113
|
+
// 7.18.1.4 Integer types capable of holding object pointers
|
|
114
|
+
#ifdef _WIN64 // [
|
|
115
|
+
typedef signed __int64 intptr_t;
|
|
116
|
+
typedef unsigned __int64 uintptr_t;
|
|
117
|
+
#else // _WIN64 ][
|
|
118
|
+
typedef _W64 signed int intptr_t;
|
|
119
|
+
typedef _W64 unsigned int uintptr_t;
|
|
120
|
+
#endif // _WIN64 ]
|
|
121
|
+
|
|
122
|
+
// 7.18.1.5 Greatest-width integer types
|
|
123
|
+
typedef int64_t intmax_t;
|
|
124
|
+
typedef uint64_t uintmax_t;
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
// 7.18.2 Limits of specified-width integer types
|
|
128
|
+
|
|
129
|
+
#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) // [ See footnote 220 at page 257 and footnote 221 at page 259
|
|
130
|
+
|
|
131
|
+
// 7.18.2.1 Limits of exact-width integer types
|
|
132
|
+
#define INT8_MIN ((int8_t)_I8_MIN)
|
|
133
|
+
#define INT8_MAX _I8_MAX
|
|
134
|
+
#define INT16_MIN ((int16_t)_I16_MIN)
|
|
135
|
+
#define INT16_MAX _I16_MAX
|
|
136
|
+
#define INT32_MIN ((int32_t)_I32_MIN)
|
|
137
|
+
#define INT32_MAX _I32_MAX
|
|
138
|
+
#define INT64_MIN ((int64_t)_I64_MIN)
|
|
139
|
+
#define INT64_MAX _I64_MAX
|
|
140
|
+
#define UINT8_MAX _UI8_MAX
|
|
141
|
+
#define UINT16_MAX _UI16_MAX
|
|
142
|
+
#define UINT32_MAX _UI32_MAX
|
|
143
|
+
#define UINT64_MAX _UI64_MAX
|
|
144
|
+
|
|
145
|
+
// 7.18.2.2 Limits of minimum-width integer types
|
|
146
|
+
#define INT_LEAST8_MIN INT8_MIN
|
|
147
|
+
#define INT_LEAST8_MAX INT8_MAX
|
|
148
|
+
#define INT_LEAST16_MIN INT16_MIN
|
|
149
|
+
#define INT_LEAST16_MAX INT16_MAX
|
|
150
|
+
#define INT_LEAST32_MIN INT32_MIN
|
|
151
|
+
#define INT_LEAST32_MAX INT32_MAX
|
|
152
|
+
#define INT_LEAST64_MIN INT64_MIN
|
|
153
|
+
#define INT_LEAST64_MAX INT64_MAX
|
|
154
|
+
#define UINT_LEAST8_MAX UINT8_MAX
|
|
155
|
+
#define UINT_LEAST16_MAX UINT16_MAX
|
|
156
|
+
#define UINT_LEAST32_MAX UINT32_MAX
|
|
157
|
+
#define UINT_LEAST64_MAX UINT64_MAX
|
|
158
|
+
|
|
159
|
+
// 7.18.2.3 Limits of fastest minimum-width integer types
|
|
160
|
+
#define INT_FAST8_MIN INT8_MIN
|
|
161
|
+
#define INT_FAST8_MAX INT8_MAX
|
|
162
|
+
#define INT_FAST16_MIN INT16_MIN
|
|
163
|
+
#define INT_FAST16_MAX INT16_MAX
|
|
164
|
+
#define INT_FAST32_MIN INT32_MIN
|
|
165
|
+
#define INT_FAST32_MAX INT32_MAX
|
|
166
|
+
#define INT_FAST64_MIN INT64_MIN
|
|
167
|
+
#define INT_FAST64_MAX INT64_MAX
|
|
168
|
+
#define UINT_FAST8_MAX UINT8_MAX
|
|
169
|
+
#define UINT_FAST16_MAX UINT16_MAX
|
|
170
|
+
#define UINT_FAST32_MAX UINT32_MAX
|
|
171
|
+
#define UINT_FAST64_MAX UINT64_MAX
|
|
172
|
+
|
|
173
|
+
// 7.18.2.4 Limits of integer types capable of holding object pointers
|
|
174
|
+
#ifdef _WIN64 // [
|
|
175
|
+
# define INTPTR_MIN INT64_MIN
|
|
176
|
+
# define INTPTR_MAX INT64_MAX
|
|
177
|
+
# define UINTPTR_MAX UINT64_MAX
|
|
178
|
+
#else // _WIN64 ][
|
|
179
|
+
# define INTPTR_MIN INT32_MIN
|
|
180
|
+
# define INTPTR_MAX INT32_MAX
|
|
181
|
+
# define UINTPTR_MAX UINT32_MAX
|
|
182
|
+
#endif // _WIN64 ]
|
|
183
|
+
|
|
184
|
+
// 7.18.2.5 Limits of greatest-width integer types
|
|
185
|
+
#define INTMAX_MIN INT64_MIN
|
|
186
|
+
#define INTMAX_MAX INT64_MAX
|
|
187
|
+
#define UINTMAX_MAX UINT64_MAX
|
|
188
|
+
|
|
189
|
+
// 7.18.3 Limits of other integer types
|
|
190
|
+
|
|
191
|
+
#ifdef _WIN64 // [
|
|
192
|
+
# define PTRDIFF_MIN _I64_MIN
|
|
193
|
+
# define PTRDIFF_MAX _I64_MAX
|
|
194
|
+
#else // _WIN64 ][
|
|
195
|
+
# define PTRDIFF_MIN _I32_MIN
|
|
196
|
+
# define PTRDIFF_MAX _I32_MAX
|
|
197
|
+
#endif // _WIN64 ]
|
|
198
|
+
|
|
199
|
+
#define SIG_ATOMIC_MIN INT_MIN
|
|
200
|
+
#define SIG_ATOMIC_MAX INT_MAX
|
|
201
|
+
|
|
202
|
+
#ifndef SIZE_MAX // [
|
|
203
|
+
# ifdef _WIN64 // [
|
|
204
|
+
# define SIZE_MAX _UI64_MAX
|
|
205
|
+
# else // _WIN64 ][
|
|
206
|
+
# define SIZE_MAX _UI32_MAX
|
|
207
|
+
# endif // _WIN64 ]
|
|
208
|
+
#endif // SIZE_MAX ]
|
|
209
|
+
|
|
210
|
+
// WCHAR_MIN and WCHAR_MAX are also defined in <wchar.h>
|
|
211
|
+
#ifndef WCHAR_MIN // [
|
|
212
|
+
# define WCHAR_MIN 0
|
|
213
|
+
#endif // WCHAR_MIN ]
|
|
214
|
+
#ifndef WCHAR_MAX // [
|
|
215
|
+
# define WCHAR_MAX _UI16_MAX
|
|
216
|
+
#endif // WCHAR_MAX ]
|
|
217
|
+
|
|
218
|
+
#define WINT_MIN 0
|
|
219
|
+
#define WINT_MAX _UI16_MAX
|
|
220
|
+
|
|
221
|
+
#endif // __STDC_LIMIT_MACROS ]
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
// 7.18.4 Limits of other integer types
|
|
225
|
+
|
|
226
|
+
#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS) // [ See footnote 224 at page 260
|
|
227
|
+
|
|
228
|
+
// 7.18.4.1 Macros for minimum-width integer constants
|
|
229
|
+
|
|
230
|
+
#define INT8_C(val) val##i8
|
|
231
|
+
#define INT16_C(val) val##i16
|
|
232
|
+
#define INT32_C(val) val##i32
|
|
233
|
+
#define INT64_C(val) val##i64
|
|
234
|
+
|
|
235
|
+
#define UINT8_C(val) val##ui8
|
|
236
|
+
#define UINT16_C(val) val##ui16
|
|
237
|
+
#define UINT32_C(val) val##ui32
|
|
238
|
+
#define UINT64_C(val) val##ui64
|
|
239
|
+
|
|
240
|
+
// 7.18.4.2 Macros for greatest-width integer constants
|
|
241
|
+
#define INTMAX_C INT64_C
|
|
242
|
+
#define UINTMAX_C UINT64_C
|
|
243
|
+
|
|
244
|
+
#endif // __STDC_CONSTANT_MACROS ]
|
|
245
|
+
|
|
246
|
+
|
|
247
|
+
#endif // _MSC_STDINT_H_ ]
|
package/include/node/uv/unix.h
CHANGED
|
@@ -59,6 +59,7 @@
|
|
|
59
59
|
# include "uv/darwin.h"
|
|
60
60
|
#elif defined(__DragonFly__) || \
|
|
61
61
|
defined(__FreeBSD__) || \
|
|
62
|
+
defined(__FreeBSD_kernel__) || \
|
|
62
63
|
defined(__OpenBSD__) || \
|
|
63
64
|
defined(__NetBSD__)
|
|
64
65
|
# include "uv/bsd.h"
|
|
@@ -92,8 +93,8 @@ typedef struct uv__io_s uv__io_t;
|
|
|
92
93
|
|
|
93
94
|
struct uv__io_s {
|
|
94
95
|
uv__io_cb cb;
|
|
95
|
-
|
|
96
|
-
|
|
96
|
+
void* pending_queue[2];
|
|
97
|
+
void* watcher_queue[2];
|
|
97
98
|
unsigned int pevents; /* Pending event mask i.e. mask at next tick. */
|
|
98
99
|
unsigned int events; /* Current event mask. */
|
|
99
100
|
int fd;
|
|
@@ -220,21 +221,21 @@ typedef struct {
|
|
|
220
221
|
#define UV_LOOP_PRIVATE_FIELDS \
|
|
221
222
|
unsigned long flags; \
|
|
222
223
|
int backend_fd; \
|
|
223
|
-
|
|
224
|
-
|
|
224
|
+
void* pending_queue[2]; \
|
|
225
|
+
void* watcher_queue[2]; \
|
|
225
226
|
uv__io_t** watchers; \
|
|
226
227
|
unsigned int nwatchers; \
|
|
227
228
|
unsigned int nfds; \
|
|
228
|
-
|
|
229
|
+
void* wq[2]; \
|
|
229
230
|
uv_mutex_t wq_mutex; \
|
|
230
231
|
uv_async_t wq_async; \
|
|
231
232
|
uv_rwlock_t cloexec_lock; \
|
|
232
233
|
uv_handle_t* closing_handles; \
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
234
|
+
void* process_handles[2]; \
|
|
235
|
+
void* prepare_handles[2]; \
|
|
236
|
+
void* check_handles[2]; \
|
|
237
|
+
void* idle_handles[2]; \
|
|
238
|
+
void* async_handles[2]; \
|
|
238
239
|
void (*async_unused)(void); /* TODO(bnoordhuis) Remove in libuv v2. */ \
|
|
239
240
|
uv__io_t async_io_watcher; \
|
|
240
241
|
int async_wfd; \
|
|
@@ -257,7 +258,7 @@ typedef struct {
|
|
|
257
258
|
#define UV_PRIVATE_REQ_TYPES /* empty */
|
|
258
259
|
|
|
259
260
|
#define UV_WRITE_PRIVATE_FIELDS \
|
|
260
|
-
|
|
261
|
+
void* queue[2]; \
|
|
261
262
|
unsigned int write_index; \
|
|
262
263
|
uv_buf_t* bufs; \
|
|
263
264
|
unsigned int nbufs; \
|
|
@@ -265,12 +266,12 @@ typedef struct {
|
|
|
265
266
|
uv_buf_t bufsml[4]; \
|
|
266
267
|
|
|
267
268
|
#define UV_CONNECT_PRIVATE_FIELDS \
|
|
268
|
-
|
|
269
|
+
void* queue[2]; \
|
|
269
270
|
|
|
270
271
|
#define UV_SHUTDOWN_PRIVATE_FIELDS /* empty */
|
|
271
272
|
|
|
272
273
|
#define UV_UDP_SEND_PRIVATE_FIELDS \
|
|
273
|
-
|
|
274
|
+
void* queue[2]; \
|
|
274
275
|
struct sockaddr_storage addr; \
|
|
275
276
|
unsigned int nbufs; \
|
|
276
277
|
uv_buf_t* bufs; \
|
|
@@ -286,8 +287,8 @@ typedef struct {
|
|
|
286
287
|
uv_connect_t *connect_req; \
|
|
287
288
|
uv_shutdown_t *shutdown_req; \
|
|
288
289
|
uv__io_t io_watcher; \
|
|
289
|
-
|
|
290
|
-
|
|
290
|
+
void* write_queue[2]; \
|
|
291
|
+
void* write_completed_queue[2]; \
|
|
291
292
|
uv_connection_cb connection_cb; \
|
|
292
293
|
int delayed_error; \
|
|
293
294
|
int accepted_fd; \
|
|
@@ -300,30 +301,30 @@ typedef struct {
|
|
|
300
301
|
uv_alloc_cb alloc_cb; \
|
|
301
302
|
uv_udp_recv_cb recv_cb; \
|
|
302
303
|
uv__io_t io_watcher; \
|
|
303
|
-
|
|
304
|
-
|
|
304
|
+
void* write_queue[2]; \
|
|
305
|
+
void* write_completed_queue[2]; \
|
|
305
306
|
|
|
306
307
|
#define UV_PIPE_PRIVATE_FIELDS \
|
|
307
|
-
const char* pipe_fname; /*
|
|
308
|
+
const char* pipe_fname; /* strdup'ed */
|
|
308
309
|
|
|
309
310
|
#define UV_POLL_PRIVATE_FIELDS \
|
|
310
311
|
uv__io_t io_watcher;
|
|
311
312
|
|
|
312
313
|
#define UV_PREPARE_PRIVATE_FIELDS \
|
|
313
314
|
uv_prepare_cb prepare_cb; \
|
|
314
|
-
|
|
315
|
+
void* queue[2]; \
|
|
315
316
|
|
|
316
317
|
#define UV_CHECK_PRIVATE_FIELDS \
|
|
317
318
|
uv_check_cb check_cb; \
|
|
318
|
-
|
|
319
|
+
void* queue[2]; \
|
|
319
320
|
|
|
320
321
|
#define UV_IDLE_PRIVATE_FIELDS \
|
|
321
322
|
uv_idle_cb idle_cb; \
|
|
322
|
-
|
|
323
|
+
void* queue[2]; \
|
|
323
324
|
|
|
324
325
|
#define UV_ASYNC_PRIVATE_FIELDS \
|
|
325
326
|
uv_async_cb async_cb; \
|
|
326
|
-
|
|
327
|
+
void* queue[2]; \
|
|
327
328
|
int pending; \
|
|
328
329
|
|
|
329
330
|
#define UV_TIMER_PRIVATE_FIELDS \
|
|
@@ -352,7 +353,7 @@ typedef struct {
|
|
|
352
353
|
int retcode;
|
|
353
354
|
|
|
354
355
|
#define UV_PROCESS_PRIVATE_FIELDS \
|
|
355
|
-
|
|
356
|
+
void* queue[2]; \
|
|
356
357
|
int status; \
|
|
357
358
|
|
|
358
359
|
#define UV_FS_PRIVATE_FIELDS \
|
|
@@ -417,8 +418,6 @@ typedef struct {
|
|
|
417
418
|
# define UV_FS_O_DIRECT 0x04000
|
|
418
419
|
#elif defined(__linux__) && defined(__x86_64__)
|
|
419
420
|
# define UV_FS_O_DIRECT 0x04000
|
|
420
|
-
#elif defined(__linux__) && defined(__loongarch__)
|
|
421
|
-
# define UV_FS_O_DIRECT 0x04000
|
|
422
421
|
#elif defined(O_DIRECT)
|
|
423
422
|
# define UV_FS_O_DIRECT O_DIRECT
|
|
424
423
|
#else
|
package/include/node/uv/win.h
CHANGED
|
@@ -59,7 +59,12 @@ typedef struct pollfd {
|
|
|
59
59
|
#include <signal.h>
|
|
60
60
|
#include <fcntl.h>
|
|
61
61
|
#include <sys/stat.h>
|
|
62
|
-
|
|
62
|
+
|
|
63
|
+
#if defined(_MSC_VER) && _MSC_VER < 1600
|
|
64
|
+
# include "uv/stdint-msvc2008.h"
|
|
65
|
+
#else
|
|
66
|
+
# include <stdint.h>
|
|
67
|
+
#endif
|
|
63
68
|
|
|
64
69
|
#include "uv/tree.h"
|
|
65
70
|
#include "uv/threadpool.h"
|
|
@@ -70,11 +75,6 @@ typedef struct pollfd {
|
|
|
70
75
|
# define S_IFLNK 0xA000
|
|
71
76
|
#endif
|
|
72
77
|
|
|
73
|
-
// Define missing in Windows Kit Include\{VERSION}\ucrt\sys\stat.h
|
|
74
|
-
#if defined(_CRT_INTERNAL_NONSTDC_NAMES) && _CRT_INTERNAL_NONSTDC_NAMES && !defined(S_IFIFO)
|
|
75
|
-
# define S_IFIFO _S_IFIFO
|
|
76
|
-
#endif
|
|
77
|
-
|
|
78
78
|
/* Additional signals supported by uv_signal and or uv_kill. The CRT defines
|
|
79
79
|
* the following signals already:
|
|
80
80
|
*
|
|
@@ -91,7 +91,6 @@ typedef struct pollfd {
|
|
|
91
91
|
* variants (Linux and Darwin)
|
|
92
92
|
*/
|
|
93
93
|
#define SIGHUP 1
|
|
94
|
-
#define SIGQUIT 3
|
|
95
94
|
#define SIGKILL 9
|
|
96
95
|
#define SIGWINCH 28
|
|
97
96
|
|
|
@@ -224,7 +223,7 @@ typedef struct _AFD_POLL_INFO {
|
|
|
224
223
|
AFD_POLL_HANDLE_INFO Handles[1];
|
|
225
224
|
} AFD_POLL_INFO, *PAFD_POLL_INFO;
|
|
226
225
|
|
|
227
|
-
#define UV_MSAFD_PROVIDER_COUNT
|
|
226
|
+
#define UV_MSAFD_PROVIDER_COUNT 3
|
|
228
227
|
|
|
229
228
|
|
|
230
229
|
/**
|
|
@@ -275,12 +274,11 @@ typedef struct {
|
|
|
275
274
|
} uv_rwlock_t;
|
|
276
275
|
|
|
277
276
|
typedef struct {
|
|
278
|
-
unsigned
|
|
279
|
-
unsigned
|
|
277
|
+
unsigned int n;
|
|
278
|
+
unsigned int count;
|
|
280
279
|
uv_mutex_t mutex;
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
unsigned out;
|
|
280
|
+
uv_sem_t turnstile1;
|
|
281
|
+
uv_sem_t turnstile2;
|
|
284
282
|
} uv_barrier_t;
|
|
285
283
|
|
|
286
284
|
typedef struct {
|
|
@@ -350,14 +348,14 @@ typedef struct {
|
|
|
350
348
|
uv_idle_t* next_idle_handle; \
|
|
351
349
|
/* This handle holds the peer sockets for the fast variant of uv_poll_t */ \
|
|
352
350
|
SOCKET poll_peer_sockets[UV_MSAFD_PROVIDER_COUNT]; \
|
|
353
|
-
/*
|
|
351
|
+
/* Counter to keep track of active tcp streams */ \
|
|
354
352
|
unsigned int active_tcp_streams; \
|
|
355
|
-
/*
|
|
353
|
+
/* Counter to keep track of active udp streams */ \
|
|
356
354
|
unsigned int active_udp_streams; \
|
|
357
355
|
/* Counter to started timer */ \
|
|
358
356
|
uint64_t timer_counter; \
|
|
359
357
|
/* Threadpool */ \
|
|
360
|
-
|
|
358
|
+
void* wq[2]; \
|
|
361
359
|
uv_mutex_t wq_mutex; \
|
|
362
360
|
uv_async_t wq_async;
|
|
363
361
|
|
|
@@ -384,7 +382,6 @@ typedef struct {
|
|
|
384
382
|
ULONG_PTR result; /* overlapped.Internal is reused to hold the result */\
|
|
385
383
|
HANDLE pipeHandle; \
|
|
386
384
|
DWORD duplex_flags; \
|
|
387
|
-
WCHAR* name; \
|
|
388
385
|
} connect; \
|
|
389
386
|
} u; \
|
|
390
387
|
struct uv_req_s* next_req;
|
|
@@ -486,7 +483,7 @@ typedef struct {
|
|
|
486
483
|
uint32_t payload_remaining; \
|
|
487
484
|
uint64_t dummy; /* TODO: retained for ABI compat; remove this in v2.x. */ \
|
|
488
485
|
} ipc_data_frame; \
|
|
489
|
-
|
|
486
|
+
void* ipc_xfer_queue[2]; \
|
|
490
487
|
int ipc_xfer_queue_length; \
|
|
491
488
|
uv_write_t* non_overlapped_writes_tail; \
|
|
492
489
|
CRITICAL_SECTION readfile_thread_lock; \
|
|
@@ -500,7 +497,7 @@ typedef struct {
|
|
|
500
497
|
struct { uv_pipe_connection_fields } conn; \
|
|
501
498
|
} pipe;
|
|
502
499
|
|
|
503
|
-
/* TODO: put the parser states in
|
|
500
|
+
/* TODO: put the parser states in an union - TTY handles are always half-duplex
|
|
504
501
|
* so read-state can safely overlap write-state. */
|
|
505
502
|
#define UV_TTY_PRIVATE_FIELDS \
|
|
506
503
|
HANDLE handle; \
|
|
@@ -608,7 +605,7 @@ typedef struct {
|
|
|
608
605
|
struct uv_process_exit_s { \
|
|
609
606
|
UV_REQ_FIELDS \
|
|
610
607
|
} exit_req; \
|
|
611
|
-
|
|
608
|
+
BYTE* child_stdio_buffer; \
|
|
612
609
|
int exit_signal; \
|
|
613
610
|
HANDLE wait_handle; \
|
|
614
611
|
HANDLE process_handle; \
|
package/include/node/uv.h
CHANGED
|
@@ -31,7 +31,6 @@ extern "C" {
|
|
|
31
31
|
#error "Define either BUILDING_UV_SHARED or USING_UV_SHARED, not both."
|
|
32
32
|
#endif
|
|
33
33
|
|
|
34
|
-
#ifndef UV_EXTERN
|
|
35
34
|
#ifdef _WIN32
|
|
36
35
|
/* Windows - set up dll import/export decorators. */
|
|
37
36
|
# if defined(BUILDING_UV_SHARED)
|
|
@@ -51,19 +50,17 @@ extern "C" {
|
|
|
51
50
|
#else
|
|
52
51
|
# define UV_EXTERN /* nothing */
|
|
53
52
|
#endif
|
|
54
|
-
#endif /* UV_EXTERN */
|
|
55
53
|
|
|
56
54
|
#include "uv/errno.h"
|
|
57
55
|
#include "uv/version.h"
|
|
58
56
|
#include <stddef.h>
|
|
59
57
|
#include <stdio.h>
|
|
60
|
-
#include <stdint.h>
|
|
61
58
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
59
|
+
#if defined(_MSC_VER) && _MSC_VER < 1600
|
|
60
|
+
# include "uv/stdint-msvc2008.h"
|
|
61
|
+
#else
|
|
62
|
+
# include <stdint.h>
|
|
63
|
+
#endif
|
|
67
64
|
|
|
68
65
|
#if defined(_WIN32)
|
|
69
66
|
# include "uv/win.h"
|
|
@@ -155,8 +152,6 @@ struct uv__queue {
|
|
|
155
152
|
XX(EFTYPE, "inappropriate file type or format") \
|
|
156
153
|
XX(EILSEQ, "illegal byte sequence") \
|
|
157
154
|
XX(ESOCKTNOSUPPORT, "socket type not supported") \
|
|
158
|
-
XX(ENODATA, "no data available") \
|
|
159
|
-
XX(EUNATCH, "protocol driver not attached") \
|
|
160
155
|
|
|
161
156
|
#define UV_HANDLE_TYPE_MAP(XX) \
|
|
162
157
|
XX(ASYNC, async) \
|
|
@@ -252,12 +247,9 @@ typedef struct uv_cpu_info_s uv_cpu_info_t;
|
|
|
252
247
|
typedef struct uv_interface_address_s uv_interface_address_t;
|
|
253
248
|
typedef struct uv_dirent_s uv_dirent_t;
|
|
254
249
|
typedef struct uv_passwd_s uv_passwd_t;
|
|
255
|
-
typedef struct uv_group_s uv_group_t;
|
|
256
250
|
typedef struct uv_utsname_s uv_utsname_t;
|
|
257
251
|
typedef struct uv_statfs_s uv_statfs_t;
|
|
258
252
|
|
|
259
|
-
typedef struct uv_metrics_s uv_metrics_t;
|
|
260
|
-
|
|
261
253
|
typedef enum {
|
|
262
254
|
UV_LOOP_BLOCK_SIGNAL = 0,
|
|
263
255
|
UV_METRICS_IDLE_TIME
|
|
@@ -290,13 +282,13 @@ UV_EXTERN int uv_loop_init(uv_loop_t* loop);
|
|
|
290
282
|
UV_EXTERN int uv_loop_close(uv_loop_t* loop);
|
|
291
283
|
/*
|
|
292
284
|
* NOTE:
|
|
293
|
-
* This function is DEPRECATED, users should
|
|
285
|
+
* This function is DEPRECATED (to be removed after 0.12), users should
|
|
294
286
|
* allocate the loop manually and use uv_loop_init instead.
|
|
295
287
|
*/
|
|
296
288
|
UV_EXTERN uv_loop_t* uv_loop_new(void);
|
|
297
289
|
/*
|
|
298
290
|
* NOTE:
|
|
299
|
-
* This function is DEPRECATED. Users should use
|
|
291
|
+
* This function is DEPRECATED (to be removed after 0.12). Users should use
|
|
300
292
|
* uv_loop_close and free the memory manually instead.
|
|
301
293
|
*/
|
|
302
294
|
UV_EXTERN void uv_loop_delete(uv_loop_t*);
|
|
@@ -352,32 +344,11 @@ typedef void (*uv_random_cb)(uv_random_t* req,
|
|
|
352
344
|
void* buf,
|
|
353
345
|
size_t buflen);
|
|
354
346
|
|
|
355
|
-
typedef enum {
|
|
356
|
-
UV_CLOCK_MONOTONIC,
|
|
357
|
-
UV_CLOCK_REALTIME
|
|
358
|
-
} uv_clock_id;
|
|
359
|
-
|
|
360
|
-
/* XXX(bnoordhuis) not 2038-proof, https://github.com/libuv/libuv/issues/3864 */
|
|
361
347
|
typedef struct {
|
|
362
348
|
long tv_sec;
|
|
363
349
|
long tv_nsec;
|
|
364
350
|
} uv_timespec_t;
|
|
365
351
|
|
|
366
|
-
typedef struct {
|
|
367
|
-
int64_t tv_sec;
|
|
368
|
-
int32_t tv_nsec;
|
|
369
|
-
} uv_timespec64_t;
|
|
370
|
-
|
|
371
|
-
/* XXX(bnoordhuis) not 2038-proof, https://github.com/libuv/libuv/issues/3864 */
|
|
372
|
-
typedef struct {
|
|
373
|
-
long tv_sec;
|
|
374
|
-
long tv_usec;
|
|
375
|
-
} uv_timeval_t;
|
|
376
|
-
|
|
377
|
-
typedef struct {
|
|
378
|
-
int64_t tv_sec;
|
|
379
|
-
int32_t tv_usec;
|
|
380
|
-
} uv_timeval64_t;
|
|
381
352
|
|
|
382
353
|
typedef struct {
|
|
383
354
|
uint64_t st_dev;
|
|
@@ -466,7 +437,7 @@ struct uv_shutdown_s {
|
|
|
466
437
|
uv_handle_type type; \
|
|
467
438
|
/* private */ \
|
|
468
439
|
uv_close_cb close_cb; \
|
|
469
|
-
|
|
440
|
+
void* handle_queue[2]; \
|
|
470
441
|
union { \
|
|
471
442
|
int fd; \
|
|
472
443
|
void* reserved[4]; \
|
|
@@ -808,10 +779,6 @@ inline int uv_tty_set_mode(uv_tty_t* handle, int mode) {
|
|
|
808
779
|
|
|
809
780
|
UV_EXTERN uv_handle_type uv_guess_handle(uv_file file);
|
|
810
781
|
|
|
811
|
-
enum {
|
|
812
|
-
UV_PIPE_NO_TRUNCATE = 1u << 0
|
|
813
|
-
};
|
|
814
|
-
|
|
815
782
|
/*
|
|
816
783
|
* uv_pipe_t is a subclass of uv_stream_t.
|
|
817
784
|
*
|
|
@@ -828,20 +795,10 @@ struct uv_pipe_s {
|
|
|
828
795
|
UV_EXTERN int uv_pipe_init(uv_loop_t*, uv_pipe_t* handle, int ipc);
|
|
829
796
|
UV_EXTERN int uv_pipe_open(uv_pipe_t*, uv_file file);
|
|
830
797
|
UV_EXTERN int uv_pipe_bind(uv_pipe_t* handle, const char* name);
|
|
831
|
-
UV_EXTERN int uv_pipe_bind2(uv_pipe_t* handle,
|
|
832
|
-
const char* name,
|
|
833
|
-
size_t namelen,
|
|
834
|
-
unsigned int flags);
|
|
835
798
|
UV_EXTERN void uv_pipe_connect(uv_connect_t* req,
|
|
836
799
|
uv_pipe_t* handle,
|
|
837
800
|
const char* name,
|
|
838
801
|
uv_connect_cb cb);
|
|
839
|
-
UV_EXTERN int uv_pipe_connect2(uv_connect_t* req,
|
|
840
|
-
uv_pipe_t* handle,
|
|
841
|
-
const char* name,
|
|
842
|
-
size_t namelen,
|
|
843
|
-
unsigned int flags,
|
|
844
|
-
uv_connect_cb cb);
|
|
845
802
|
UV_EXTERN int uv_pipe_getsockname(const uv_pipe_t* handle,
|
|
846
803
|
char* buffer,
|
|
847
804
|
size_t* size);
|
|
@@ -1182,12 +1139,6 @@ struct uv_passwd_s {
|
|
|
1182
1139
|
char* homedir;
|
|
1183
1140
|
};
|
|
1184
1141
|
|
|
1185
|
-
struct uv_group_s {
|
|
1186
|
-
char* groupname;
|
|
1187
|
-
unsigned long gid;
|
|
1188
|
-
char** members;
|
|
1189
|
-
};
|
|
1190
|
-
|
|
1191
1142
|
struct uv_utsname_s {
|
|
1192
1143
|
char sysname[256];
|
|
1193
1144
|
char release[256];
|
|
@@ -1233,6 +1184,16 @@ UV_EXTERN int uv_uptime(double* uptime);
|
|
|
1233
1184
|
UV_EXTERN uv_os_fd_t uv_get_osfhandle(int fd);
|
|
1234
1185
|
UV_EXTERN int uv_open_osfhandle(uv_os_fd_t os_fd);
|
|
1235
1186
|
|
|
1187
|
+
typedef struct {
|
|
1188
|
+
long tv_sec;
|
|
1189
|
+
long tv_usec;
|
|
1190
|
+
} uv_timeval_t;
|
|
1191
|
+
|
|
1192
|
+
typedef struct {
|
|
1193
|
+
int64_t tv_sec;
|
|
1194
|
+
int32_t tv_usec;
|
|
1195
|
+
} uv_timeval64_t;
|
|
1196
|
+
|
|
1236
1197
|
typedef struct {
|
|
1237
1198
|
uv_timeval_t ru_utime; /* user CPU time used */
|
|
1238
1199
|
uv_timeval_t ru_stime; /* system CPU time used */
|
|
@@ -1258,9 +1219,6 @@ UV_EXTERN int uv_os_homedir(char* buffer, size_t* size);
|
|
|
1258
1219
|
UV_EXTERN int uv_os_tmpdir(char* buffer, size_t* size);
|
|
1259
1220
|
UV_EXTERN int uv_os_get_passwd(uv_passwd_t* pwd);
|
|
1260
1221
|
UV_EXTERN void uv_os_free_passwd(uv_passwd_t* pwd);
|
|
1261
|
-
UV_EXTERN int uv_os_get_passwd2(uv_passwd_t* pwd, uv_uid_t uid);
|
|
1262
|
-
UV_EXTERN int uv_os_get_group(uv_group_t* grp, uv_uid_t gid);
|
|
1263
|
-
UV_EXTERN void uv_os_free_group(uv_group_t* grp);
|
|
1264
1222
|
UV_EXTERN uv_pid_t uv_os_getpid(void);
|
|
1265
1223
|
UV_EXTERN uv_pid_t uv_os_getppid(void);
|
|
1266
1224
|
|
|
@@ -1287,7 +1245,6 @@ UV_EXTERN int uv_os_setpriority(uv_pid_t pid, int priority);
|
|
|
1287
1245
|
UV_EXTERN unsigned int uv_available_parallelism(void);
|
|
1288
1246
|
UV_EXTERN int uv_cpu_info(uv_cpu_info_t** cpu_infos, int* count);
|
|
1289
1247
|
UV_EXTERN void uv_free_cpu_info(uv_cpu_info_t* cpu_infos, int count);
|
|
1290
|
-
UV_EXTERN int uv_cpumask_size(void);
|
|
1291
1248
|
|
|
1292
1249
|
UV_EXTERN int uv_interface_addresses(uv_interface_address_t** addresses,
|
|
1293
1250
|
int* count);
|
|
@@ -1320,15 +1277,6 @@ UV_EXTERN int uv_os_gethostname(char* buffer, size_t* size);
|
|
|
1320
1277
|
|
|
1321
1278
|
UV_EXTERN int uv_os_uname(uv_utsname_t* buffer);
|
|
1322
1279
|
|
|
1323
|
-
struct uv_metrics_s {
|
|
1324
|
-
uint64_t loop_count;
|
|
1325
|
-
uint64_t events;
|
|
1326
|
-
uint64_t events_waiting;
|
|
1327
|
-
/* private */
|
|
1328
|
-
uint64_t* reserved[13];
|
|
1329
|
-
};
|
|
1330
|
-
|
|
1331
|
-
UV_EXTERN int uv_metrics_info(uv_loop_t* loop, uv_metrics_t* metrics);
|
|
1332
1280
|
UV_EXTERN uint64_t uv_metrics_idle_time(uv_loop_t* loop);
|
|
1333
1281
|
|
|
1334
1282
|
typedef enum {
|
|
@@ -1762,9 +1710,7 @@ UV_EXTERN int uv_chdir(const char* dir);
|
|
|
1762
1710
|
UV_EXTERN uint64_t uv_get_free_memory(void);
|
|
1763
1711
|
UV_EXTERN uint64_t uv_get_total_memory(void);
|
|
1764
1712
|
UV_EXTERN uint64_t uv_get_constrained_memory(void);
|
|
1765
|
-
UV_EXTERN uint64_t uv_get_available_memory(void);
|
|
1766
1713
|
|
|
1767
|
-
UV_EXTERN int uv_clock_gettime(uv_clock_id clock_id, uv_timespec64_t* ts);
|
|
1768
1714
|
UV_EXTERN uint64_t uv_hrtime(void);
|
|
1769
1715
|
UV_EXTERN void uv_sleep(unsigned int msec);
|
|
1770
1716
|
|
|
@@ -1841,14 +1787,6 @@ UV_EXTERN int uv_thread_create_ex(uv_thread_t* tid,
|
|
|
1841
1787
|
const uv_thread_options_t* params,
|
|
1842
1788
|
uv_thread_cb entry,
|
|
1843
1789
|
void* arg);
|
|
1844
|
-
UV_EXTERN int uv_thread_setaffinity(uv_thread_t* tid,
|
|
1845
|
-
char* cpumask,
|
|
1846
|
-
char* oldmask,
|
|
1847
|
-
size_t mask_size);
|
|
1848
|
-
UV_EXTERN int uv_thread_getaffinity(uv_thread_t* tid,
|
|
1849
|
-
char* cpumask,
|
|
1850
|
-
size_t mask_size);
|
|
1851
|
-
UV_EXTERN int uv_thread_getcpu(void);
|
|
1852
1790
|
UV_EXTERN uv_thread_t uv_thread_self(void);
|
|
1853
1791
|
UV_EXTERN int uv_thread_join(uv_thread_t *tid);
|
|
1854
1792
|
UV_EXTERN int uv_thread_equal(const uv_thread_t* t1, const uv_thread_t* t2);
|
|
@@ -1870,7 +1808,7 @@ struct uv_loop_s {
|
|
|
1870
1808
|
void* data;
|
|
1871
1809
|
/* Loop reference counting. */
|
|
1872
1810
|
unsigned int active_handles;
|
|
1873
|
-
|
|
1811
|
+
void* handle_queue[2];
|
|
1874
1812
|
union {
|
|
1875
1813
|
void* unused;
|
|
1876
1814
|
unsigned int count;
|