Go to the documentation of this file.
32 #define NUM_WRITES 256
33 #define BUFFERS_PER_WRITE 3
34 #define BUFFER_SIZE 0x2000
35 #define BUFFER_CONTENT 42
37 #define XFER_SIZE (NUM_WRITES * BUFFERS_PER_WRITE * BUFFER_SIZE)
82 size_t suggested_size,
84 buf->base = malloc(suggested_size);
85 buf->len = (
int) suggested_size;
89 #include <sys/types.h>
100 for (
i = 0;
i < nread;
i++)
#define BUFFERS_PER_WRITE
static void alloc_cb(uv_handle_t *handle, size_t suggested_size, uv_buf_t *buf)
return memset(p, 0, total)
UV_EXTERN int uv_pipe_init(uv_loop_t *, uv_pipe_t *handle, int ipc)
static uv_shutdown_t shutdown_req
UV_EXTERN int uv_run(uv_loop_t *, uv_run_mode mode)
#define container_of(ptr, type, member)
static void do_writes_and_reads(uv_stream_t *handle)
UV_EXTERN void uv_close(uv_handle_t *handle, uv_close_cb close_cb)
static void shutdown_cb(uv_shutdown_t *req, int status)
UV_EXTERN uv_loop_t * uv_default_loop(void)
wrapped_grpc_channel * channel
static void read_cb(uv_stream_t *handle, ssize_t nread, const uv_buf_t *buf)
static uv_process_t process
UV_EXTERN int uv_write(uv_write_t *req, uv_stream_t *handle, const uv_buf_t bufs[], unsigned int nbufs, uv_write_cb cb)
UV_PRIVATE_REQ_TYPES UV_EXTERN int uv_shutdown(uv_shutdown_t *req, uv_stream_t *handle, uv_shutdown_cb cb)
UV_EXTERN int uv_read_start(uv_stream_t *, uv_alloc_cb alloc_cb, uv_read_cb read_cb)
static void do_write(uv_stream_t *handle)
UV_EXTERN void uv_sleep(unsigned int msec)
TEST_IMPL(ipc_heavy_traffic_deadlock_bug)
void notify_parent_process(void)
char buffers[BUFFER_SIZE][BUFFERS_PER_WRITE]
#define MAKE_VALGRIND_HAPPY()
void spawn_helper(uv_pipe_t *channel, uv_process_t *process, const char *helper)
UV_EXTERN uv_buf_t uv_buf_init(char *base, unsigned int len)
static size_t bytes_written
UV_EXTERN int uv_read_stop(uv_stream_t *)
static void write_cb(uv_write_t *req, int status)
UV_EXTERN int uv_pipe_open(uv_pipe_t *, uv_file file)
int ipc_helper_heavy_traffic_deadlock_bug(void)
grpc
Author(s):
autogenerated on Fri May 16 2025 03:00:26