More explicit pointer type conversion

pull/12440/head
Yash Tibrewal 7 years ago
parent 7f6a27a4d3
commit ca3c1c05eb
  1. 7
      src/core/ext/filters/client_channel/channel_connectivity.c
  2. 133
      src/core/ext/filters/client_channel/client_channel.c
  3. 10
      src/core/ext/filters/client_channel/http_connect_handshaker.c
  4. 2
      src/core/ext/filters/client_channel/lb_policy.c
  5. 10
      src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.c
  6. 42
      src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.c
  7. 12
      src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.c
  8. 33
      src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.c
  9. 12
      src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.c
  10. 13
      src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.c
  11. 5
      src/core/ext/filters/client_channel/lb_policy_factory.c
  12. 2
      src/core/ext/filters/client_channel/proxy_mapper_registry.c
  13. 7
      src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.c
  14. 8
      src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.c
  15. 20
      src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.c
  16. 6
      src/core/ext/filters/client_channel/retry_throttle.c
  17. 28
      src/core/ext/filters/client_channel/subchannel.c
  18. 12
      src/core/ext/filters/client_channel/subchannel_index.c
  19. 7
      src/core/ext/filters/client_channel/uri_parser.c
  20. 15
      src/core/ext/filters/deadline/deadline_filter.c
  21. 18
      src/core/ext/filters/http/client/http_client_filter.c
  22. 2
      src/core/ext/filters/http/http_filters_plugin.c
  23. 16
      src/core/ext/filters/http/message_compress/message_compress_filter.c
  24. 22
      src/core/ext/filters/http/server/http_server_filter.c
  25. 2
      src/core/ext/filters/load_reporting/load_reporting.c
  26. 16
      src/core/ext/filters/load_reporting/load_reporting_filter.c
  27. 8
      src/core/ext/transport/chttp2/client/chttp2_connector.c
  28. 17
      src/core/ext/transport/chttp2/server/chttp2_server.c
  29. 4
      src/core/ext/transport/chttp2/transport/frame_goaway.c
  30. 4
      src/core/ext/transport/chttp2/transport/frame_ping.c
  31. 2
      src/core/ext/transport/chttp2/transport/frame_rst_stream.c
  32. 2
      src/core/ext/transport/chttp2/transport/frame_settings.c
  33. 3
      src/core/ext/transport/chttp2/transport/frame_window_update.c
  34. 5
      src/core/ext/transport/chttp2/transport/hpack_encoder.c
  35. 9
      src/core/ext/transport/chttp2/transport/hpack_parser.c
  36. 4
      src/core/ext/transport/chttp2/transport/hpack_table.c
  37. 9
      src/core/ext/transport/chttp2/transport/parsing.c
  38. 4
      src/core/ext/transport/chttp2/transport/stream_map.c
  39. 15
      src/core/ext/transport/inproc/inproc_transport.c
  40. 2
      src/core/lib/channel/channel_stack_builder.c
  41. 6
      src/core/lib/debug/trace.c
  42. 4
      src/core/lib/iomgr/combiner.c
  43. 14
      src/core/lib/iomgr/ev_epollex_linux.c
  44. 15
      src/core/lib/iomgr/ev_epollsig_linux.c
  45. 52
      src/core/lib/iomgr/ev_poll_posix.c
  46. 4
      src/core/lib/iomgr/ev_posix.c
  47. 5
      src/core/lib/iomgr/executor.c
  48. 3
      src/core/lib/iomgr/load_file.c
  49. 11
      src/core/lib/iomgr/resolve_address_posix.c
  50. 36
      src/core/lib/iomgr/resource_quota.c
  51. 9
      src/core/lib/iomgr/tcp_client_posix.c
  52. 2
      src/core/lib/iomgr/tcp_posix.c
  53. 11
      src/core/lib/iomgr/tcp_server_posix.c
  54. 2
      src/core/lib/iomgr/tcp_server_utils_posix_common.c
  55. 8
      src/core/lib/iomgr/timer_heap.c
  56. 2
      src/core/lib/iomgr/timer_manager.c
  57. 16
      src/core/lib/iomgr/udp_server.c
  58. 6
      src/core/lib/iomgr/unix_sockets_posix.c
  59. 3
      src/core/lib/iomgr/wakeup_fd_cv.c
  60. 2
      src/core/lib/json/json.c
  61. 26
      src/core/lib/json/json_string.c
  62. 4
      src/core/lib/slice/b64.c
  63. 26
      src/core/lib/slice/slice.c
  64. 9
      src/core/lib/slice/slice_buffer.c
  65. 5
      src/core/lib/slice/slice_hash_table.c
  66. 13
      src/core/lib/slice/slice_intern.c
  67. 6
      src/core/lib/surface/alarm.c
  68. 6
      src/core/lib/surface/byte_buffer.c
  69. 35
      src/core/lib/surface/call.c
  70. 6
      src/core/lib/surface/channel.c
  71. 12
      src/core/lib/surface/channel_init.c
  72. 4
      src/core/lib/surface/channel_ping.c
  73. 25
      src/core/lib/surface/completion_queue.c
  74. 103
      src/core/lib/surface/server.c
  75. 3
      src/core/lib/transport/connectivity_state.c
  76. 11
      src/core/lib/transport/metadata.c
  77. 8
      src/core/lib/transport/service_config.c
  78. 9
      src/core/lib/transport/transport.c

@ -87,7 +87,7 @@ static void delete_state_watcher(grpc_exec_ctx *exec_ctx, state_watcher *w) {
static void finished_completion(grpc_exec_ctx *exec_ctx, void *pw, static void finished_completion(grpc_exec_ctx *exec_ctx, void *pw,
grpc_cq_completion *ignored) { grpc_cq_completion *ignored) {
int delete = 0; int delete = 0;
state_watcher *w = pw; state_watcher *w = (state_watcher *)pw;
gpr_mu_lock(&w->mu); gpr_mu_lock(&w->mu);
switch (w->phase) { switch (w->phase) {
case WAITING: case WAITING:
@ -203,7 +203,7 @@ void grpc_channel_watch_connectivity_state(
grpc_channel_element *client_channel_elem = grpc_channel_element *client_channel_elem =
grpc_channel_stack_last_element(grpc_channel_get_channel_stack(channel)); grpc_channel_stack_last_element(grpc_channel_get_channel_stack(channel));
grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT; grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
state_watcher *w = gpr_malloc(sizeof(*w)); state_watcher *w = (state_watcher *)gpr_malloc(sizeof(*w));
GRPC_API_TRACE( GRPC_API_TRACE(
"grpc_channel_watch_connectivity_state(" "grpc_channel_watch_connectivity_state("
@ -228,7 +228,8 @@ void grpc_channel_watch_connectivity_state(
w->channel = channel; w->channel = channel;
w->error = NULL; w->error = NULL;
watcher_timer_init_arg *wa = gpr_malloc(sizeof(watcher_timer_init_arg)); watcher_timer_init_arg *wa =
(watcher_timer_init_arg *)gpr_malloc(sizeof(watcher_timer_init_arg));
wa->w = w; wa->w = w;
wa->deadline = deadline; wa->deadline = deadline;
GRPC_CLOSURE_INIT(&w->watcher_timer_init, watcher_timer_init, wa, GRPC_CLOSURE_INIT(&w->watcher_timer_init, watcher_timer_init, wa,

@ -148,7 +148,8 @@ static void *method_parameters_create_from_json(const grpc_json *json) {
if (!parse_timeout(field, &timeout)) return NULL; if (!parse_timeout(field, &timeout)) return NULL;
} }
} }
method_parameters *value = gpr_malloc(sizeof(method_parameters)); method_parameters *value =
(method_parameters *)gpr_malloc(sizeof(method_parameters));
gpr_ref_init(&value->refs, 1); gpr_ref_init(&value->refs, 1);
value->timeout = timeout; value->timeout = timeout;
value->wait_for_ready = wait_for_ready; value->wait_for_ready = wait_for_ready;
@ -254,7 +255,7 @@ static void set_channel_connectivity_state_locked(grpc_exec_ctx *exec_ctx,
static void on_lb_policy_state_changed_locked(grpc_exec_ctx *exec_ctx, static void on_lb_policy_state_changed_locked(grpc_exec_ctx *exec_ctx,
void *arg, grpc_error *error) { void *arg, grpc_error *error) {
lb_policy_connectivity_watcher *w = arg; lb_policy_connectivity_watcher *w = (lb_policy_connectivity_watcher *)arg;
grpc_connectivity_state publish_state = w->state; grpc_connectivity_state publish_state = w->state;
/* check if the notification is for the latest policy */ /* check if the notification is for the latest policy */
if (w->lb_policy == w->chand->lb_policy) { if (w->lb_policy == w->chand->lb_policy) {
@ -281,7 +282,8 @@ static void on_lb_policy_state_changed_locked(grpc_exec_ctx *exec_ctx,
static void watch_lb_policy_locked(grpc_exec_ctx *exec_ctx, channel_data *chand, static void watch_lb_policy_locked(grpc_exec_ctx *exec_ctx, channel_data *chand,
grpc_lb_policy *lb_policy, grpc_lb_policy *lb_policy,
grpc_connectivity_state current_state) { grpc_connectivity_state current_state) {
lb_policy_connectivity_watcher *w = gpr_malloc(sizeof(*w)); lb_policy_connectivity_watcher *w =
(lb_policy_connectivity_watcher *)gpr_malloc(sizeof(*w));
GRPC_CHANNEL_STACK_REF(chand->owning_stack, "watch_lb_policy"); GRPC_CHANNEL_STACK_REF(chand->owning_stack, "watch_lb_policy");
w->chand = chand; w->chand = chand;
GRPC_CLOSURE_INIT(&w->on_changed, on_lb_policy_state_changed_locked, w, GRPC_CLOSURE_INIT(&w->on_changed, on_lb_policy_state_changed_locked, w,
@ -310,7 +312,8 @@ typedef struct {
} service_config_parsing_state; } service_config_parsing_state;
static void parse_retry_throttle_params(const grpc_json *field, void *arg) { static void parse_retry_throttle_params(const grpc_json *field, void *arg) {
service_config_parsing_state *parsing_state = arg; service_config_parsing_state *parsing_state =
(service_config_parsing_state *)arg;
if (strcmp(field->key, "retryThrottling") == 0) { if (strcmp(field->key, "retryThrottling") == 0) {
if (parsing_state->retry_throttle_data != NULL) return; // Duplicate. if (parsing_state->retry_throttle_data != NULL) return; // Duplicate.
if (field->type != GRPC_JSON_OBJECT) return; if (field->type != GRPC_JSON_OBJECT) return;
@ -365,7 +368,7 @@ static void parse_retry_throttle_params(const grpc_json *field, void *arg) {
static void on_resolver_result_changed_locked(grpc_exec_ctx *exec_ctx, static void on_resolver_result_changed_locked(grpc_exec_ctx *exec_ctx,
void *arg, grpc_error *error) { void *arg, grpc_error *error) {
channel_data *chand = arg; channel_data *chand = (channel_data *)arg;
if (GRPC_TRACER_ON(grpc_client_channel_trace)) { if (GRPC_TRACER_ON(grpc_client_channel_trace)) {
gpr_log(GPR_DEBUG, "chand=%p: got resolver result: error=%s", chand, gpr_log(GPR_DEBUG, "chand=%p: got resolver result: error=%s", chand,
grpc_error_string(error)); grpc_error_string(error));
@ -391,7 +394,8 @@ static void on_resolver_result_changed_locked(grpc_exec_ctx *exec_ctx,
channel_arg = channel_arg =
grpc_channel_args_find(chand->resolver_result, GRPC_ARG_LB_ADDRESSES); grpc_channel_args_find(chand->resolver_result, GRPC_ARG_LB_ADDRESSES);
if (channel_arg != NULL && channel_arg->type == GRPC_ARG_POINTER) { if (channel_arg != NULL && channel_arg->type == GRPC_ARG_POINTER) {
grpc_lb_addresses *addresses = channel_arg->value.pointer.p; grpc_lb_addresses *addresses =
(grpc_lb_addresses *)channel_arg->value.pointer.p;
bool found_balancer_address = false; bool found_balancer_address = false;
for (size_t i = 0; i < addresses->num_addresses; ++i) { for (size_t i = 0; i < addresses->num_addresses; ++i) {
if (addresses->addresses[i].is_balancer) { if (addresses->addresses[i].is_balancer) {
@ -586,9 +590,10 @@ static void on_resolver_result_changed_locked(grpc_exec_ctx *exec_ctx,
static void start_transport_op_locked(grpc_exec_ctx *exec_ctx, void *arg, static void start_transport_op_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error_ignored) { grpc_error *error_ignored) {
grpc_transport_op *op = arg; grpc_transport_op *op = (grpc_transport_op *)arg;
grpc_channel_element *elem = op->handler_private.extra_arg; grpc_channel_element *elem =
channel_data *chand = elem->channel_data; (grpc_channel_element *)op->handler_private.extra_arg;
channel_data *chand = (channel_data *)elem->channel_data;
if (op->on_connectivity_state_change != NULL) { if (op->on_connectivity_state_change != NULL) {
grpc_connectivity_state_notify_on_state_change( grpc_connectivity_state_notify_on_state_change(
@ -642,7 +647,7 @@ static void start_transport_op_locked(grpc_exec_ctx *exec_ctx, void *arg,
static void cc_start_transport_op(grpc_exec_ctx *exec_ctx, static void cc_start_transport_op(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem, grpc_channel_element *elem,
grpc_transport_op *op) { grpc_transport_op *op) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
GPR_ASSERT(op->set_accept_stream == false); GPR_ASSERT(op->set_accept_stream == false);
if (op->bind_pollset != NULL) { if (op->bind_pollset != NULL) {
@ -662,7 +667,7 @@ static void cc_start_transport_op(grpc_exec_ctx *exec_ctx,
static void cc_get_channel_info(grpc_exec_ctx *exec_ctx, static void cc_get_channel_info(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem, grpc_channel_element *elem,
const grpc_channel_info *info) { const grpc_channel_info *info) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
gpr_mu_lock(&chand->info_mu); gpr_mu_lock(&chand->info_mu);
if (info->lb_policy_name != NULL) { if (info->lb_policy_name != NULL) {
*info->lb_policy_name = chand->info_lb_policy_name == NULL *info->lb_policy_name = chand->info_lb_policy_name == NULL
@ -682,7 +687,7 @@ static void cc_get_channel_info(grpc_exec_ctx *exec_ctx,
static grpc_error *cc_init_channel_elem(grpc_exec_ctx *exec_ctx, static grpc_error *cc_init_channel_elem(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem, grpc_channel_element *elem,
grpc_channel_element_args *args) { grpc_channel_element_args *args) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
GPR_ASSERT(args->is_last); GPR_ASSERT(args->is_last);
GPR_ASSERT(elem->filter == &grpc_client_channel_filter); GPR_ASSERT(elem->filter == &grpc_client_channel_filter);
// Initialize data members. // Initialize data members.
@ -713,7 +718,8 @@ static grpc_error *cc_init_channel_elem(grpc_exec_ctx *exec_ctx,
"client channel factory arg must be a pointer"); "client channel factory arg must be a pointer");
} }
grpc_client_channel_factory_ref(arg->value.pointer.p); grpc_client_channel_factory_ref(arg->value.pointer.p);
chand->client_channel_factory = arg->value.pointer.p; chand->client_channel_factory =
(grpc_client_channel_factory *)arg->value.pointer.p;
// Get server name to resolve, using proxy mapper if needed. // Get server name to resolve, using proxy mapper if needed.
arg = grpc_channel_args_find(args->channel_args, GRPC_ARG_SERVER_URI); arg = grpc_channel_args_find(args->channel_args, GRPC_ARG_SERVER_URI);
if (arg == NULL) { if (arg == NULL) {
@ -745,7 +751,7 @@ static grpc_error *cc_init_channel_elem(grpc_exec_ctx *exec_ctx,
static void shutdown_resolver_locked(grpc_exec_ctx *exec_ctx, void *arg, static void shutdown_resolver_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_resolver *resolver = arg; grpc_resolver *resolver = (grpc_resolver *)arg;
grpc_resolver_shutdown_locked(exec_ctx, resolver); grpc_resolver_shutdown_locked(exec_ctx, resolver);
GRPC_RESOLVER_UNREF(exec_ctx, resolver, "channel"); GRPC_RESOLVER_UNREF(exec_ctx, resolver, "channel");
} }
@ -753,7 +759,7 @@ static void shutdown_resolver_locked(grpc_exec_ctx *exec_ctx, void *arg,
/* Destructor for channel_data */ /* Destructor for channel_data */
static void cc_destroy_channel_elem(grpc_exec_ctx *exec_ctx, static void cc_destroy_channel_elem(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem) { grpc_channel_element *elem) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
if (chand->resolver != NULL) { if (chand->resolver != NULL) {
GRPC_CLOSURE_SCHED( GRPC_CLOSURE_SCHED(
exec_ctx, GRPC_CLOSURE_CREATE(shutdown_resolver_locked, chand->resolver, exec_ctx, GRPC_CLOSURE_CREATE(shutdown_resolver_locked, chand->resolver,
@ -848,7 +854,7 @@ typedef struct client_channel_call_data {
grpc_subchannel_call *grpc_client_channel_get_subchannel_call( grpc_subchannel_call *grpc_client_channel_get_subchannel_call(
grpc_call_element *elem) { grpc_call_element *elem) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
return calld->subchannel_call; return calld->subchannel_call;
} }
@ -868,7 +874,7 @@ static void waiting_for_pick_batches_add(
// This is called via the call combiner, so access to calld is synchronized. // This is called via the call combiner, so access to calld is synchronized.
static void fail_pending_batch_in_call_combiner(grpc_exec_ctx *exec_ctx, static void fail_pending_batch_in_call_combiner(grpc_exec_ctx *exec_ctx,
void *arg, grpc_error *error) { void *arg, grpc_error *error) {
call_data *calld = arg; call_data *calld = (call_data *)arg;
if (calld->waiting_for_pick_batches_count > 0) { if (calld->waiting_for_pick_batches_count > 0) {
--calld->waiting_for_pick_batches_count; --calld->waiting_for_pick_batches_count;
grpc_transport_stream_op_batch_finish_with_failure( grpc_transport_stream_op_batch_finish_with_failure(
@ -882,7 +888,7 @@ static void fail_pending_batch_in_call_combiner(grpc_exec_ctx *exec_ctx,
static void waiting_for_pick_batches_fail(grpc_exec_ctx *exec_ctx, static void waiting_for_pick_batches_fail(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
grpc_error *error) { grpc_error *error) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (GRPC_TRACER_ON(grpc_client_channel_trace)) { if (GRPC_TRACER_ON(grpc_client_channel_trace)) {
gpr_log(GPR_DEBUG, gpr_log(GPR_DEBUG,
"chand=%p calld=%p: failing %" PRIdPTR " pending batches: %s", "chand=%p calld=%p: failing %" PRIdPTR " pending batches: %s",
@ -912,7 +918,7 @@ static void waiting_for_pick_batches_fail(grpc_exec_ctx *exec_ctx,
// This is called via the call combiner, so access to calld is synchronized. // This is called via the call combiner, so access to calld is synchronized.
static void run_pending_batch_in_call_combiner(grpc_exec_ctx *exec_ctx, static void run_pending_batch_in_call_combiner(grpc_exec_ctx *exec_ctx,
void *arg, grpc_error *ignored) { void *arg, grpc_error *ignored) {
call_data *calld = arg; call_data *calld = (call_data *)arg;
if (calld->waiting_for_pick_batches_count > 0) { if (calld->waiting_for_pick_batches_count > 0) {
--calld->waiting_for_pick_batches_count; --calld->waiting_for_pick_batches_count;
grpc_subchannel_call_process_op( grpc_subchannel_call_process_op(
@ -924,8 +930,8 @@ static void run_pending_batch_in_call_combiner(grpc_exec_ctx *exec_ctx,
// This is called via the call combiner, so access to calld is synchronized. // This is called via the call combiner, so access to calld is synchronized.
static void waiting_for_pick_batches_resume(grpc_exec_ctx *exec_ctx, static void waiting_for_pick_batches_resume(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem) { grpc_call_element *elem) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (GRPC_TRACER_ON(grpc_client_channel_trace)) { if (GRPC_TRACER_ON(grpc_client_channel_trace)) {
gpr_log(GPR_DEBUG, "chand=%p calld=%p: sending %" PRIdPTR gpr_log(GPR_DEBUG, "chand=%p calld=%p: sending %" PRIdPTR
" pending batches to subchannel_call=%p", " pending batches to subchannel_call=%p",
@ -950,8 +956,8 @@ static void waiting_for_pick_batches_resume(grpc_exec_ctx *exec_ctx,
// that the resolver has returned results to the channel. // that the resolver has returned results to the channel.
static void apply_service_config_to_call_locked(grpc_exec_ctx *exec_ctx, static void apply_service_config_to_call_locked(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem) { grpc_call_element *elem) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (GRPC_TRACER_ON(grpc_client_channel_trace)) { if (GRPC_TRACER_ON(grpc_client_channel_trace)) {
gpr_log(GPR_DEBUG, "chand=%p calld=%p: applying service config to call", gpr_log(GPR_DEBUG, "chand=%p calld=%p: applying service config to call",
chand, calld); chand, calld);
@ -961,7 +967,7 @@ static void apply_service_config_to_call_locked(grpc_exec_ctx *exec_ctx,
grpc_server_retry_throttle_data_ref(chand->retry_throttle_data); grpc_server_retry_throttle_data_ref(chand->retry_throttle_data);
} }
if (chand->method_params_table != NULL) { if (chand->method_params_table != NULL) {
calld->method_params = grpc_method_config_table_get( calld->method_params = (method_parameters *)grpc_method_config_table_get(
exec_ctx, chand->method_params_table, calld->path); exec_ctx, chand->method_params_table, calld->path);
if (calld->method_params != NULL) { if (calld->method_params != NULL) {
method_parameters_ref(calld->method_params); method_parameters_ref(calld->method_params);
@ -984,8 +990,8 @@ static void apply_service_config_to_call_locked(grpc_exec_ctx *exec_ctx,
static void create_subchannel_call_locked(grpc_exec_ctx *exec_ctx, static void create_subchannel_call_locked(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
grpc_error *error) { grpc_error *error) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
const grpc_connected_subchannel_call_args call_args = { const grpc_connected_subchannel_call_args call_args = {
.pollent = calld->pollent, .pollent = calld->pollent,
.path = calld->path, .path = calld->path,
@ -1013,8 +1019,8 @@ static void create_subchannel_call_locked(grpc_exec_ctx *exec_ctx,
static void subchannel_ready_locked(grpc_exec_ctx *exec_ctx, static void subchannel_ready_locked(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
grpc_error *error) { grpc_error *error) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
grpc_polling_entity_del_from_pollset_set(exec_ctx, calld->pollent, grpc_polling_entity_del_from_pollset_set(exec_ctx, calld->pollent,
chand->interested_parties); chand->interested_parties);
if (calld->connected_subchannel == NULL) { if (calld->connected_subchannel == NULL) {
@ -1057,15 +1063,16 @@ typedef struct {
static void pick_after_resolver_result_cancel_locked(grpc_exec_ctx *exec_ctx, static void pick_after_resolver_result_cancel_locked(grpc_exec_ctx *exec_ctx,
void *arg, void *arg,
grpc_error *error) { grpc_error *error) {
pick_after_resolver_result_args *args = arg; pick_after_resolver_result_args *args =
(pick_after_resolver_result_args *)arg;
if (args->finished) { if (args->finished) {
gpr_free(args); gpr_free(args);
return; return;
} }
args->finished = true; args->finished = true;
grpc_call_element *elem = args->elem; grpc_call_element *elem = args->elem;
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
// If we don't yet have a resolver result, then a closure for // If we don't yet have a resolver result, then a closure for
// pick_after_resolver_result_done_locked() will have been added to // pick_after_resolver_result_done_locked() will have been added to
// chand->waiting_for_resolver_result_closures, and it may not be invoked // chand->waiting_for_resolver_result_closures, and it may not be invoked
@ -1091,7 +1098,8 @@ static void pick_after_resolver_result_cancel_locked(grpc_exec_ctx *exec_ctx,
static void pick_after_resolver_result_done_locked(grpc_exec_ctx *exec_ctx, static void pick_after_resolver_result_done_locked(grpc_exec_ctx *exec_ctx,
void *arg, void *arg,
grpc_error *error) { grpc_error *error) {
pick_after_resolver_result_args *args = arg; pick_after_resolver_result_args *args =
(pick_after_resolver_result_args *)arg;
if (args->finished) { if (args->finished) {
/* cancelled, do nothing */ /* cancelled, do nothing */
if (GRPC_TRACER_ON(grpc_client_channel_trace)) { if (GRPC_TRACER_ON(grpc_client_channel_trace)) {
@ -1102,8 +1110,8 @@ static void pick_after_resolver_result_done_locked(grpc_exec_ctx *exec_ctx,
} }
args->finished = true; args->finished = true;
grpc_call_element *elem = args->elem; grpc_call_element *elem = args->elem;
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (error != GRPC_ERROR_NONE) { if (error != GRPC_ERROR_NONE) {
if (GRPC_TRACER_ON(grpc_client_channel_trace)) { if (GRPC_TRACER_ON(grpc_client_channel_trace)) {
gpr_log(GPR_DEBUG, "chand=%p calld=%p: resolver failed to return data", gpr_log(GPR_DEBUG, "chand=%p calld=%p: resolver failed to return data",
@ -1123,8 +1131,8 @@ static void pick_after_resolver_result_done_locked(grpc_exec_ctx *exec_ctx,
static void pick_after_resolver_result_start_locked(grpc_exec_ctx *exec_ctx, static void pick_after_resolver_result_start_locked(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem) { grpc_call_element *elem) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (GRPC_TRACER_ON(grpc_client_channel_trace)) { if (GRPC_TRACER_ON(grpc_client_channel_trace)) {
gpr_log(GPR_DEBUG, gpr_log(GPR_DEBUG,
"chand=%p calld=%p: deferring pick pending resolver result", chand, "chand=%p calld=%p: deferring pick pending resolver result", chand,
@ -1148,9 +1156,9 @@ static void pick_after_resolver_result_start_locked(grpc_exec_ctx *exec_ctx,
// holding the call combiner. // holding the call combiner.
static void pick_callback_cancel_locked(grpc_exec_ctx *exec_ctx, void *arg, static void pick_callback_cancel_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_call_element *elem = arg; grpc_call_element *elem = (grpc_call_element *)arg;
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (error != GRPC_ERROR_NONE && calld->lb_policy != NULL) { if (error != GRPC_ERROR_NONE && calld->lb_policy != NULL) {
if (GRPC_TRACER_ON(grpc_client_channel_trace)) { if (GRPC_TRACER_ON(grpc_client_channel_trace)) {
gpr_log(GPR_DEBUG, "chand=%p calld=%p: cancelling pick from LB policy %p", gpr_log(GPR_DEBUG, "chand=%p calld=%p: cancelling pick from LB policy %p",
@ -1167,9 +1175,9 @@ static void pick_callback_cancel_locked(grpc_exec_ctx *exec_ctx, void *arg,
// Unrefs the LB policy and invokes subchannel_ready_locked(). // Unrefs the LB policy and invokes subchannel_ready_locked().
static void pick_callback_done_locked(grpc_exec_ctx *exec_ctx, void *arg, static void pick_callback_done_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_call_element *elem = arg; grpc_call_element *elem = (grpc_call_element *)arg;
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (GRPC_TRACER_ON(grpc_client_channel_trace)) { if (GRPC_TRACER_ON(grpc_client_channel_trace)) {
gpr_log(GPR_DEBUG, "chand=%p calld=%p: pick completed asynchronously", gpr_log(GPR_DEBUG, "chand=%p calld=%p: pick completed asynchronously",
chand, calld); chand, calld);
@ -1186,8 +1194,8 @@ static void pick_callback_done_locked(grpc_exec_ctx *exec_ctx, void *arg,
static bool pick_callback_start_locked(grpc_exec_ctx *exec_ctx, static bool pick_callback_start_locked(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
const grpc_lb_policy_pick_args *inputs) { const grpc_lb_policy_pick_args *inputs) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (GRPC_TRACER_ON(grpc_client_channel_trace)) { if (GRPC_TRACER_ON(grpc_client_channel_trace)) {
gpr_log(GPR_DEBUG, "chand=%p calld=%p: starting pick on lb_policy=%p", gpr_log(GPR_DEBUG, "chand=%p calld=%p: starting pick on lb_policy=%p",
chand, calld, chand->lb_policy); chand, calld, chand->lb_policy);
@ -1222,8 +1230,8 @@ static bool pick_callback_start_locked(grpc_exec_ctx *exec_ctx,
static bool pick_subchannel_locked(grpc_exec_ctx *exec_ctx, static bool pick_subchannel_locked(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem) { grpc_call_element *elem) {
GPR_TIMER_BEGIN("pick_subchannel", 0); GPR_TIMER_BEGIN("pick_subchannel", 0);
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
bool pick_done = false; bool pick_done = false;
if (chand->lb_policy != NULL) { if (chand->lb_policy != NULL) {
apply_service_config_to_call_locked(exec_ctx, elem); apply_service_config_to_call_locked(exec_ctx, elem);
@ -1295,8 +1303,8 @@ static void start_pick_locked(grpc_exec_ctx *exec_ctx, void *arg,
} }
static void on_complete(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) { static void on_complete(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
grpc_call_element *elem = arg; grpc_call_element *elem = (grpc_call_element *)arg;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (calld->retry_throttle_data != NULL) { if (calld->retry_throttle_data != NULL) {
if (error == GRPC_ERROR_NONE) { if (error == GRPC_ERROR_NONE) {
grpc_server_retry_throttle_data_record_success( grpc_server_retry_throttle_data_record_success(
@ -1317,8 +1325,8 @@ static void on_complete(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
static void cc_start_transport_stream_op_batch( static void cc_start_transport_stream_op_batch(
grpc_exec_ctx *exec_ctx, grpc_call_element *elem, grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
grpc_transport_stream_op_batch *batch) { grpc_transport_stream_op_batch *batch) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
if (chand->deadline_checking_enabled) { if (chand->deadline_checking_enabled) {
grpc_deadline_state_client_start_transport_stream_op_batch(exec_ctx, elem, grpc_deadline_state_client_start_transport_stream_op_batch(exec_ctx, elem,
batch); batch);
@ -1411,8 +1419,8 @@ done:
static grpc_error *cc_init_call_elem(grpc_exec_ctx *exec_ctx, static grpc_error *cc_init_call_elem(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
const grpc_call_element_args *args) { const grpc_call_element_args *args) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
// Initialize data members. // Initialize data members.
calld->path = grpc_slice_ref_internal(args->path); calld->path = grpc_slice_ref_internal(args->path);
calld->call_start_time = args->start_time; calld->call_start_time = args->start_time;
@ -1432,8 +1440,8 @@ static void cc_destroy_call_elem(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
const grpc_call_final_info *final_info, const grpc_call_final_info *final_info,
grpc_closure *then_schedule_closure) { grpc_closure *then_schedule_closure) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
if (chand->deadline_checking_enabled) { if (chand->deadline_checking_enabled) {
grpc_deadline_state_destroy(exec_ctx, elem); grpc_deadline_state_destroy(exec_ctx, elem);
} }
@ -1467,7 +1475,7 @@ static void cc_destroy_call_elem(grpc_exec_ctx *exec_ctx,
static void cc_set_pollset_or_pollset_set(grpc_exec_ctx *exec_ctx, static void cc_set_pollset_or_pollset_set(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
grpc_polling_entity *pollent) { grpc_polling_entity *pollent) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
calld->pollent = pollent; calld->pollent = pollent;
} }
@ -1491,7 +1499,7 @@ const grpc_channel_filter grpc_client_channel_filter = {
static void try_to_connect_locked(grpc_exec_ctx *exec_ctx, void *arg, static void try_to_connect_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error_ignored) { grpc_error *error_ignored) {
channel_data *chand = arg; channel_data *chand = (channel_data *)arg;
if (chand->lb_policy != NULL) { if (chand->lb_policy != NULL) {
grpc_lb_policy_exit_idle_locked(exec_ctx, chand->lb_policy); grpc_lb_policy_exit_idle_locked(exec_ctx, chand->lb_policy);
} else { } else {
@ -1505,7 +1513,7 @@ static void try_to_connect_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_connectivity_state grpc_client_channel_check_connectivity_state( grpc_connectivity_state grpc_client_channel_check_connectivity_state(
grpc_exec_ctx *exec_ctx, grpc_channel_element *elem, int try_to_connect) { grpc_exec_ctx *exec_ctx, grpc_channel_element *elem, int try_to_connect) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
grpc_connectivity_state out = grpc_connectivity_state out =
grpc_connectivity_state_check(&chand->state_tracker); grpc_connectivity_state_check(&chand->state_tracker);
if (out == GRPC_CHANNEL_IDLE && try_to_connect) { if (out == GRPC_CHANNEL_IDLE && try_to_connect) {
@ -1576,7 +1584,7 @@ static void external_connectivity_watcher_list_remove(
int grpc_client_channel_num_external_connectivity_watchers( int grpc_client_channel_num_external_connectivity_watchers(
grpc_channel_element *elem) { grpc_channel_element *elem) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
int count = 0; int count = 0;
gpr_mu_lock(&chand->external_connectivity_watcher_list_mu); gpr_mu_lock(&chand->external_connectivity_watcher_list_mu);
@ -1593,7 +1601,7 @@ int grpc_client_channel_num_external_connectivity_watchers(
static void on_external_watch_complete(grpc_exec_ctx *exec_ctx, void *arg, static void on_external_watch_complete(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
external_connectivity_watcher *w = arg; external_connectivity_watcher *w = (external_connectivity_watcher *)arg;
grpc_closure *follow_up = w->on_complete; grpc_closure *follow_up = w->on_complete;
grpc_polling_entity_del_from_pollset_set(exec_ctx, &w->pollent, grpc_polling_entity_del_from_pollset_set(exec_ctx, &w->pollent,
w->chand->interested_parties); w->chand->interested_parties);
@ -1606,7 +1614,7 @@ static void on_external_watch_complete(grpc_exec_ctx *exec_ctx, void *arg,
static void watch_connectivity_state_locked(grpc_exec_ctx *exec_ctx, void *arg, static void watch_connectivity_state_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error_ignored) { grpc_error *error_ignored) {
external_connectivity_watcher *w = arg; external_connectivity_watcher *w = (external_connectivity_watcher *)arg;
external_connectivity_watcher *found = NULL; external_connectivity_watcher *found = NULL;
if (w->state != NULL) { if (w->state != NULL) {
external_connectivity_watcher_list_append(w->chand, w); external_connectivity_watcher_list_append(w->chand, w);
@ -1635,8 +1643,9 @@ void grpc_client_channel_watch_connectivity_state(
grpc_exec_ctx *exec_ctx, grpc_channel_element *elem, grpc_exec_ctx *exec_ctx, grpc_channel_element *elem,
grpc_polling_entity pollent, grpc_connectivity_state *state, grpc_polling_entity pollent, grpc_connectivity_state *state,
grpc_closure *closure, grpc_closure *watcher_timer_init) { grpc_closure *closure, grpc_closure *watcher_timer_init) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
external_connectivity_watcher *w = gpr_zalloc(sizeof(*w)); external_connectivity_watcher *w =
(external_connectivity_watcher *)gpr_zalloc(sizeof(*w));
w->chand = chand; w->chand = chand;
w->pollent = pollent; w->pollent = pollent;
w->on_complete = closure; w->on_complete = closure;

@ -124,7 +124,7 @@ static void handshake_failed_locked(grpc_exec_ctx* exec_ctx,
// Callback invoked when finished writing HTTP CONNECT request. // Callback invoked when finished writing HTTP CONNECT request.
static void on_write_done(grpc_exec_ctx* exec_ctx, void* arg, static void on_write_done(grpc_exec_ctx* exec_ctx, void* arg,
grpc_error* error) { grpc_error* error) {
http_connect_handshaker* handshaker = arg; http_connect_handshaker* handshaker = (http_connect_handshaker*)arg;
gpr_mu_lock(&handshaker->mu); gpr_mu_lock(&handshaker->mu);
if (error != GRPC_ERROR_NONE || handshaker->shutdown) { if (error != GRPC_ERROR_NONE || handshaker->shutdown) {
// If the write failed or we're shutting down, clean up and invoke the // If the write failed or we're shutting down, clean up and invoke the
@ -145,7 +145,7 @@ static void on_write_done(grpc_exec_ctx* exec_ctx, void* arg,
// Callback invoked for reading HTTP CONNECT response. // Callback invoked for reading HTTP CONNECT response.
static void on_read_done(grpc_exec_ctx* exec_ctx, void* arg, static void on_read_done(grpc_exec_ctx* exec_ctx, void* arg,
grpc_error* error) { grpc_error* error) {
http_connect_handshaker* handshaker = arg; http_connect_handshaker* handshaker = (http_connect_handshaker*)arg;
gpr_mu_lock(&handshaker->mu); gpr_mu_lock(&handshaker->mu);
if (error != GRPC_ERROR_NONE || handshaker->shutdown) { if (error != GRPC_ERROR_NONE || handshaker->shutdown) {
// If the read failed or we're shutting down, clean up and invoke the // If the read failed or we're shutting down, clean up and invoke the
@ -281,7 +281,8 @@ static void http_connect_handshaker_do_handshake(
GPR_ASSERT(arg->type == GRPC_ARG_STRING); GPR_ASSERT(arg->type == GRPC_ARG_STRING);
gpr_string_split(arg->value.string, "\n", &header_strings, gpr_string_split(arg->value.string, "\n", &header_strings,
&num_header_strings); &num_header_strings);
headers = gpr_malloc(sizeof(grpc_http_header) * num_header_strings); headers = (grpc_http_header*)gpr_malloc(sizeof(grpc_http_header) *
num_header_strings);
for (size_t i = 0; i < num_header_strings; ++i) { for (size_t i = 0; i < num_header_strings; ++i) {
char* sep = strchr(header_strings[i], ':'); char* sep = strchr(header_strings[i], ':');
if (sep == NULL) { if (sep == NULL) {
@ -333,7 +334,8 @@ static const grpc_handshaker_vtable http_connect_handshaker_vtable = {
http_connect_handshaker_do_handshake}; http_connect_handshaker_do_handshake};
static grpc_handshaker* grpc_http_connect_handshaker_create() { static grpc_handshaker* grpc_http_connect_handshaker_create() {
http_connect_handshaker* handshaker = gpr_malloc(sizeof(*handshaker)); http_connect_handshaker* handshaker =
(http_connect_handshaker*)gpr_malloc(sizeof(*handshaker));
memset(handshaker, 0, sizeof(*handshaker)); memset(handshaker, 0, sizeof(*handshaker));
grpc_handshaker_init(&http_connect_handshaker_vtable, &handshaker->base); grpc_handshaker_init(&http_connect_handshaker_vtable, &handshaker->base);
gpr_mu_init(&handshaker->mu); gpr_mu_init(&handshaker->mu);

@ -67,7 +67,7 @@ void grpc_lb_policy_ref(grpc_lb_policy *policy REF_FUNC_EXTRA_ARGS) {
static void shutdown_locked(grpc_exec_ctx *exec_ctx, void *arg, static void shutdown_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_lb_policy *policy = arg; grpc_lb_policy *policy = (grpc_lb_policy *)arg;
policy->vtable->shutdown_locked(exec_ctx, policy); policy->vtable->shutdown_locked(exec_ctx, policy);
GRPC_LB_POLICY_WEAK_UNREF(exec_ctx, policy, "strong-unref"); GRPC_LB_POLICY_WEAK_UNREF(exec_ctx, policy, "strong-unref");
} }

@ -49,7 +49,7 @@ typedef struct {
static void on_complete_for_send(grpc_exec_ctx *exec_ctx, void *arg, static void on_complete_for_send(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
call_data *calld = arg; call_data *calld = (call_data *)arg;
if (error == GRPC_ERROR_NONE) { if (error == GRPC_ERROR_NONE) {
calld->send_initial_metadata_succeeded = true; calld->send_initial_metadata_succeeded = true;
} }
@ -59,7 +59,7 @@ static void on_complete_for_send(grpc_exec_ctx *exec_ctx, void *arg,
static void recv_initial_metadata_ready(grpc_exec_ctx *exec_ctx, void *arg, static void recv_initial_metadata_ready(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
call_data *calld = arg; call_data *calld = (call_data *)arg;
if (error == GRPC_ERROR_NONE) { if (error == GRPC_ERROR_NONE) {
calld->recv_initial_metadata_succeeded = true; calld->recv_initial_metadata_succeeded = true;
} }
@ -70,7 +70,7 @@ static void recv_initial_metadata_ready(grpc_exec_ctx *exec_ctx, void *arg,
static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx, static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
const grpc_call_element_args *args) { const grpc_call_element_args *args) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
// Get stats object from context and take a ref. // Get stats object from context and take a ref.
GPR_ASSERT(args->context != NULL); GPR_ASSERT(args->context != NULL);
GPR_ASSERT(args->context[GRPC_GRPCLB_CLIENT_STATS].value != NULL); GPR_ASSERT(args->context[GRPC_GRPCLB_CLIENT_STATS].value != NULL);
@ -84,7 +84,7 @@ static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx,
static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem, static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
const grpc_call_final_info *final_info, const grpc_call_final_info *final_info,
grpc_closure *ignored) { grpc_closure *ignored) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
// Record call finished, optionally setting client_failed_to_send and // Record call finished, optionally setting client_failed_to_send and
// received. // received.
grpc_grpclb_client_stats_add_call_finished( grpc_grpclb_client_stats_add_call_finished(
@ -98,7 +98,7 @@ static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
static void start_transport_stream_op_batch( static void start_transport_stream_op_batch(
grpc_exec_ctx *exec_ctx, grpc_call_element *elem, grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
grpc_transport_stream_op_batch *batch) { grpc_transport_stream_op_batch *batch) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
GPR_TIMER_BEGIN("clr_start_transport_stream_op_batch", 0); GPR_TIMER_BEGIN("clr_start_transport_stream_op_batch", 0);
// Intercept send_initial_metadata. // Intercept send_initial_metadata.
if (batch->send_initial_metadata) { if (batch->send_initial_metadata) {

@ -181,7 +181,7 @@ typedef struct wrapped_rr_closure_arg {
* order to unref the round robin instance upon its invocation */ * order to unref the round robin instance upon its invocation */
static void wrapped_rr_closure(grpc_exec_ctx *exec_ctx, void *arg, static void wrapped_rr_closure(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
wrapped_rr_closure_arg *wc_arg = arg; wrapped_rr_closure_arg *wc_arg = (wrapped_rr_closure_arg *)arg;
GPR_ASSERT(wc_arg->wrapped_closure != NULL); GPR_ASSERT(wc_arg->wrapped_closure != NULL);
GRPC_CLOSURE_SCHED(exec_ctx, wc_arg->wrapped_closure, GRPC_ERROR_REF(error)); GRPC_CLOSURE_SCHED(exec_ctx, wc_arg->wrapped_closure, GRPC_ERROR_REF(error));
@ -245,7 +245,7 @@ static void add_pending_pick(pending_pick **root,
grpc_connected_subchannel **target, grpc_connected_subchannel **target,
grpc_call_context_element *context, grpc_call_context_element *context,
grpc_closure *on_complete) { grpc_closure *on_complete) {
pending_pick *pp = gpr_zalloc(sizeof(*pp)); pending_pick *pp = (pending_pick *)gpr_zalloc(sizeof(*pp));
pp->next = *root; pp->next = *root;
pp->pick_args = *pick_args; pp->pick_args = *pick_args;
pp->target = target; pp->target = target;
@ -271,7 +271,7 @@ typedef struct pending_ping {
} pending_ping; } pending_ping;
static void add_pending_ping(pending_ping **root, grpc_closure *notify) { static void add_pending_ping(pending_ping **root, grpc_closure *notify) {
pending_ping *pping = gpr_zalloc(sizeof(*pping)); pending_ping *pping = (pending_ping *)gpr_zalloc(sizeof(*pping));
pping->wrapped_notify_arg.wrapped_closure = notify; pping->wrapped_notify_arg.wrapped_closure = notify;
pping->wrapped_notify_arg.free_when_done = pping; pping->wrapped_notify_arg.free_when_done = pping;
pping->next = *root; pping->next = *root;
@ -671,7 +671,7 @@ static grpc_lb_policy_args *lb_policy_args_create(grpc_exec_ctx *exec_ctx,
grpc_lb_addresses *addresses = grpc_lb_addresses *addresses =
process_serverlist_locked(exec_ctx, glb_policy->serverlist); process_serverlist_locked(exec_ctx, glb_policy->serverlist);
GPR_ASSERT(addresses != NULL); GPR_ASSERT(addresses != NULL);
grpc_lb_policy_args *args = gpr_zalloc(sizeof(*args)); grpc_lb_policy_args *args = (grpc_lb_policy_args *)gpr_zalloc(sizeof(*args));
args->client_channel_factory = glb_policy->cc_factory; args->client_channel_factory = glb_policy->cc_factory;
args->combiner = glb_policy->base.combiner; args->combiner = glb_policy->base.combiner;
// Replace the LB addresses in the channel args that we pass down to // Replace the LB addresses in the channel args that we pass down to
@ -798,7 +798,7 @@ static void rr_handover_locked(grpc_exec_ctx *exec_ctx,
static void glb_rr_connectivity_changed_locked(grpc_exec_ctx *exec_ctx, static void glb_rr_connectivity_changed_locked(grpc_exec_ctx *exec_ctx,
void *arg, grpc_error *error) { void *arg, grpc_error *error) {
rr_connectivity_data *rr_connectivity = arg; rr_connectivity_data *rr_connectivity = (rr_connectivity_data *)arg;
glb_lb_policy *glb_policy = rr_connectivity->glb_policy; glb_lb_policy *glb_policy = rr_connectivity->glb_policy;
if (glb_policy->shutting_down) { if (glb_policy->shutting_down) {
GRPC_LB_POLICY_WEAK_UNREF(exec_ctx, &glb_policy->base, GRPC_LB_POLICY_WEAK_UNREF(exec_ctx, &glb_policy->base,
@ -841,8 +841,8 @@ static grpc_slice_hash_table_entry targets_info_entry_create(
} }
static int balancer_name_cmp_fn(void *a, void *b) { static int balancer_name_cmp_fn(void *a, void *b) {
const char *a_str = a; const char *a_str = (const char *)a;
const char *b_str = b; const char *b_str = (const char *)b;
return strcmp(a_str, b_str); return strcmp(a_str, b_str);
} }
@ -929,14 +929,14 @@ static grpc_lb_policy *glb_create(grpc_exec_ctx *exec_ctx,
if (arg == NULL || arg->type != GRPC_ARG_POINTER) { if (arg == NULL || arg->type != GRPC_ARG_POINTER) {
return NULL; return NULL;
} }
grpc_lb_addresses *addresses = arg->value.pointer.p; grpc_lb_addresses *addresses = (grpc_lb_addresses *)arg->value.pointer.p;
size_t num_grpclb_addrs = 0; size_t num_grpclb_addrs = 0;
for (size_t i = 0; i < addresses->num_addresses; ++i) { for (size_t i = 0; i < addresses->num_addresses; ++i) {
if (addresses->addresses[i].is_balancer) ++num_grpclb_addrs; if (addresses->addresses[i].is_balancer) ++num_grpclb_addrs;
} }
if (num_grpclb_addrs == 0) return NULL; if (num_grpclb_addrs == 0) return NULL;
glb_lb_policy *glb_policy = gpr_zalloc(sizeof(*glb_policy)); glb_lb_policy *glb_policy = (glb_lb_policy *)gpr_zalloc(sizeof(*glb_policy));
/* Get server name. */ /* Get server name. */
arg = grpc_channel_args_find(args->args, GRPC_ARG_SERVER_URI); arg = grpc_channel_args_find(args->args, GRPC_ARG_SERVER_URI);
@ -1190,7 +1190,8 @@ static int glb_pick_locked(grpc_exec_ctx *exec_ctx, grpc_lb_policy *pol,
} }
GRPC_LB_POLICY_REF(glb_policy->rr_policy, "glb_pick"); GRPC_LB_POLICY_REF(glb_policy->rr_policy, "glb_pick");
wrapped_rr_closure_arg *wc_arg = gpr_zalloc(sizeof(wrapped_rr_closure_arg)); wrapped_rr_closure_arg *wc_arg =
(wrapped_rr_closure_arg *)gpr_zalloc(sizeof(wrapped_rr_closure_arg));
GRPC_CLOSURE_INIT(&wc_arg->wrapper_closure, wrapped_rr_closure, wc_arg, GRPC_CLOSURE_INIT(&wc_arg->wrapper_closure, wrapped_rr_closure, wc_arg,
grpc_schedule_on_exec_ctx); grpc_schedule_on_exec_ctx);
@ -1273,7 +1274,7 @@ static void schedule_next_client_load_report(grpc_exec_ctx *exec_ctx,
static void client_load_report_done_locked(grpc_exec_ctx *exec_ctx, void *arg, static void client_load_report_done_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
glb_lb_policy *glb_policy = arg; glb_lb_policy *glb_policy = (glb_lb_policy *)arg;
grpc_byte_buffer_destroy(glb_policy->client_load_report_payload); grpc_byte_buffer_destroy(glb_policy->client_load_report_payload);
glb_policy->client_load_report_payload = NULL; glb_policy->client_load_report_payload = NULL;
if (error != GRPC_ERROR_NONE || glb_policy->lb_call == NULL) { if (error != GRPC_ERROR_NONE || glb_policy->lb_call == NULL) {
@ -1313,7 +1314,7 @@ static bool load_report_counters_are_zero(grpc_grpclb_request *request) {
static void send_client_load_report_locked(grpc_exec_ctx *exec_ctx, void *arg, static void send_client_load_report_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
glb_lb_policy *glb_policy = arg; glb_lb_policy *glb_policy = (glb_lb_policy *)arg;
if (error == GRPC_ERROR_CANCELLED || glb_policy->lb_call == NULL) { if (error == GRPC_ERROR_CANCELLED || glb_policy->lb_call == NULL) {
glb_policy->client_load_report_timer_pending = false; glb_policy->client_load_report_timer_pending = false;
GRPC_LB_POLICY_WEAK_UNREF(exec_ctx, &glb_policy->base, GRPC_LB_POLICY_WEAK_UNREF(exec_ctx, &glb_policy->base,
@ -1520,7 +1521,7 @@ static void query_for_backends_locked(grpc_exec_ctx *exec_ctx,
static void lb_on_sent_initial_request_locked(grpc_exec_ctx *exec_ctx, static void lb_on_sent_initial_request_locked(grpc_exec_ctx *exec_ctx,
void *arg, grpc_error *error) { void *arg, grpc_error *error) {
glb_lb_policy *glb_policy = arg; glb_lb_policy *glb_policy = (glb_lb_policy *)arg;
glb_policy->initial_request_sent = true; glb_policy->initial_request_sent = true;
// If we attempted to send a client load report before the initial // If we attempted to send a client load report before the initial
// request was sent, send the load report now. // request was sent, send the load report now.
@ -1533,7 +1534,7 @@ static void lb_on_sent_initial_request_locked(grpc_exec_ctx *exec_ctx,
static void lb_on_response_received_locked(grpc_exec_ctx *exec_ctx, void *arg, static void lb_on_response_received_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
glb_lb_policy *glb_policy = arg; glb_lb_policy *glb_policy = (glb_lb_policy *)arg;
grpc_op ops[2]; grpc_op ops[2];
memset(ops, 0, sizeof(ops)); memset(ops, 0, sizeof(ops));
grpc_op *op = ops; grpc_op *op = ops;
@ -1652,7 +1653,7 @@ static void lb_on_response_received_locked(grpc_exec_ctx *exec_ctx, void *arg,
static void lb_call_on_retry_timer_locked(grpc_exec_ctx *exec_ctx, void *arg, static void lb_call_on_retry_timer_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
glb_lb_policy *glb_policy = arg; glb_lb_policy *glb_policy = (glb_lb_policy *)arg;
glb_policy->retry_timer_active = false; glb_policy->retry_timer_active = false;
if (!glb_policy->shutting_down && error == GRPC_ERROR_NONE) { if (!glb_policy->shutting_down && error == GRPC_ERROR_NONE) {
if (GRPC_TRACER_ON(grpc_lb_glb_trace)) { if (GRPC_TRACER_ON(grpc_lb_glb_trace)) {
@ -1667,7 +1668,7 @@ static void lb_call_on_retry_timer_locked(grpc_exec_ctx *exec_ctx, void *arg,
static void lb_on_server_status_received_locked(grpc_exec_ctx *exec_ctx, static void lb_on_server_status_received_locked(grpc_exec_ctx *exec_ctx,
void *arg, grpc_error *error) { void *arg, grpc_error *error) {
glb_lb_policy *glb_policy = arg; glb_lb_policy *glb_policy = (glb_lb_policy *)arg;
GPR_ASSERT(glb_policy->lb_call != NULL); GPR_ASSERT(glb_policy->lb_call != NULL);
if (GRPC_TRACER_ON(grpc_lb_glb_trace)) { if (GRPC_TRACER_ON(grpc_lb_glb_trace)) {
char *status_details = char *status_details =
@ -1730,8 +1731,8 @@ static void glb_update_locked(grpc_exec_ctx *exec_ctx, grpc_lb_policy *policy,
glb_policy->pending_update_args->args); glb_policy->pending_update_args->args);
gpr_free(glb_policy->pending_update_args); gpr_free(glb_policy->pending_update_args);
} }
glb_policy->pending_update_args = glb_policy->pending_update_args = (grpc_lb_policy_args *)gpr_zalloc(
gpr_zalloc(sizeof(*glb_policy->pending_update_args)); sizeof(*glb_policy->pending_update_args));
glb_policy->pending_update_args->client_channel_factory = glb_policy->pending_update_args->client_channel_factory =
args->client_channel_factory; args->client_channel_factory;
glb_policy->pending_update_args->args = grpc_channel_args_copy(args->args); glb_policy->pending_update_args->args = grpc_channel_args_copy(args->args);
@ -1759,7 +1760,8 @@ static void glb_update_locked(grpc_exec_ctx *exec_ctx, grpc_lb_policy *policy,
(void *)glb_policy); (void *)glb_policy);
} }
} }
const grpc_lb_addresses *addresses = arg->value.pointer.p; const grpc_lb_addresses *addresses =
(const grpc_lb_addresses *)arg->value.pointer.p;
GPR_ASSERT(glb_policy->lb_channel != NULL); GPR_ASSERT(glb_policy->lb_channel != NULL);
grpc_channel_args *lb_channel_args = build_lb_channel_args( grpc_channel_args *lb_channel_args = build_lb_channel_args(
exec_ctx, addresses, glb_policy->response_generator, args->args); exec_ctx, addresses, glb_policy->response_generator, args->args);
@ -1792,7 +1794,7 @@ static void glb_update_locked(grpc_exec_ctx *exec_ctx, grpc_lb_policy *policy,
static void glb_lb_channel_on_connectivity_changed_cb(grpc_exec_ctx *exec_ctx, static void glb_lb_channel_on_connectivity_changed_cb(grpc_exec_ctx *exec_ctx,
void *arg, void *arg,
grpc_error *error) { grpc_error *error) {
glb_lb_policy *glb_policy = arg; glb_lb_policy *glb_policy = (glb_lb_policy *)arg;
if (glb_policy->shutting_down) goto done; if (glb_policy->shutting_down) goto done;
// Re-initialize the lb_call. This should also take care of updating the // Re-initialize the lb_call. This should also take care of updating the
// embedded RR policy. Note that the current RR policy, if any, will stay in // embedded RR policy. Note that the current RR policy, if any, will stay in

@ -42,7 +42,8 @@ struct grpc_grpclb_client_stats {
}; };
grpc_grpclb_client_stats* grpc_grpclb_client_stats_create() { grpc_grpclb_client_stats* grpc_grpclb_client_stats_create() {
grpc_grpclb_client_stats* client_stats = gpr_zalloc(sizeof(*client_stats)); grpc_grpclb_client_stats* client_stats =
(grpc_grpclb_client_stats*)gpr_zalloc(sizeof(*client_stats));
gpr_ref_init(&client_stats->refs, 1); gpr_ref_init(&client_stats->refs, 1);
return client_stats; return client_stats;
} }
@ -88,7 +89,8 @@ void grpc_grpclb_client_stats_add_call_dropped_locked(
// Record the drop. // Record the drop.
if (client_stats->drop_token_counts == NULL) { if (client_stats->drop_token_counts == NULL) {
client_stats->drop_token_counts = client_stats->drop_token_counts =
gpr_zalloc(sizeof(grpc_grpclb_dropped_call_counts)); (grpc_grpclb_dropped_call_counts*)gpr_zalloc(
sizeof(grpc_grpclb_dropped_call_counts));
} }
grpc_grpclb_dropped_call_counts* drop_token_counts = grpc_grpclb_dropped_call_counts* drop_token_counts =
client_stats->drop_token_counts; client_stats->drop_token_counts;
@ -103,9 +105,9 @@ void grpc_grpclb_client_stats_add_call_dropped_locked(
while (new_num_entries < drop_token_counts->num_entries + 1) { while (new_num_entries < drop_token_counts->num_entries + 1) {
new_num_entries *= 2; new_num_entries *= 2;
} }
drop_token_counts->token_counts = drop_token_counts->token_counts = (grpc_grpclb_drop_token_count*)gpr_realloc(
gpr_realloc(drop_token_counts->token_counts, drop_token_counts->token_counts,
new_num_entries * sizeof(grpc_grpclb_drop_token_count)); new_num_entries * sizeof(grpc_grpclb_drop_token_count));
grpc_grpclb_drop_token_count* new_entry = grpc_grpclb_drop_token_count* new_entry =
&drop_token_counts->token_counts[drop_token_counts->num_entries++]; &drop_token_counts->token_counts[drop_token_counts->num_entries++];
new_entry->token = gpr_strdup(token); new_entry->token = gpr_strdup(token);

@ -25,7 +25,7 @@
/* invoked once for every Server in ServerList */ /* invoked once for every Server in ServerList */
static bool count_serverlist(pb_istream_t *stream, const pb_field_t *field, static bool count_serverlist(pb_istream_t *stream, const pb_field_t *field,
void **arg) { void **arg) {
grpc_grpclb_serverlist *sl = *arg; grpc_grpclb_serverlist *sl = (grpc_grpclb_serverlist *)*arg;
grpc_grpclb_server server; grpc_grpclb_server server;
if (!pb_decode(stream, grpc_lb_v1_Server_fields, &server)) { if (!pb_decode(stream, grpc_lb_v1_Server_fields, &server)) {
gpr_log(GPR_ERROR, "nanopb error: %s", PB_GET_ERROR(stream)); gpr_log(GPR_ERROR, "nanopb error: %s", PB_GET_ERROR(stream));
@ -46,9 +46,10 @@ typedef struct decode_serverlist_arg {
/* invoked once for every Server in ServerList */ /* invoked once for every Server in ServerList */
static bool decode_serverlist(pb_istream_t *stream, const pb_field_t *field, static bool decode_serverlist(pb_istream_t *stream, const pb_field_t *field,
void **arg) { void **arg) {
decode_serverlist_arg *dec_arg = *arg; decode_serverlist_arg *dec_arg = (decode_serverlist_arg *)*arg;
GPR_ASSERT(dec_arg->serverlist->num_servers >= dec_arg->decoding_idx); GPR_ASSERT(dec_arg->serverlist->num_servers >= dec_arg->decoding_idx);
grpc_grpclb_server *server = gpr_zalloc(sizeof(grpc_grpclb_server)); grpc_grpclb_server *server =
(grpc_grpclb_server *)gpr_zalloc(sizeof(grpc_grpclb_server));
if (!pb_decode(stream, grpc_lb_v1_Server_fields, server)) { if (!pb_decode(stream, grpc_lb_v1_Server_fields, server)) {
gpr_free(server); gpr_free(server);
gpr_log(GPR_ERROR, "nanopb error: %s", PB_GET_ERROR(stream)); gpr_log(GPR_ERROR, "nanopb error: %s", PB_GET_ERROR(stream));
@ -59,7 +60,8 @@ static bool decode_serverlist(pb_istream_t *stream, const pb_field_t *field,
} }
grpc_grpclb_request *grpc_grpclb_request_create(const char *lb_service_name) { grpc_grpclb_request *grpc_grpclb_request_create(const char *lb_service_name) {
grpc_grpclb_request *req = gpr_malloc(sizeof(grpc_grpclb_request)); grpc_grpclb_request *req =
(grpc_grpclb_request *)gpr_malloc(sizeof(grpc_grpclb_request));
req->has_client_stats = false; req->has_client_stats = false;
req->has_initial_request = true; req->has_initial_request = true;
req->initial_request.has_name = true; req->initial_request.has_name = true;
@ -78,14 +80,15 @@ static void populate_timestamp(gpr_timespec timestamp,
static bool encode_string(pb_ostream_t *stream, const pb_field_t *field, static bool encode_string(pb_ostream_t *stream, const pb_field_t *field,
void *const *arg) { void *const *arg) {
char *str = *arg; char *str = (char *)*arg;
if (!pb_encode_tag_for_field(stream, field)) return false; if (!pb_encode_tag_for_field(stream, field)) return false;
return pb_encode_string(stream, (uint8_t *)str, strlen(str)); return pb_encode_string(stream, (uint8_t *)str, strlen(str));
} }
static bool encode_drops(pb_ostream_t *stream, const pb_field_t *field, static bool encode_drops(pb_ostream_t *stream, const pb_field_t *field,
void *const *arg) { void *const *arg) {
grpc_grpclb_dropped_call_counts *drop_entries = *arg; grpc_grpclb_dropped_call_counts *drop_entries =
(grpc_grpclb_dropped_call_counts *)*arg;
if (drop_entries == NULL) return true; if (drop_entries == NULL) return true;
for (size_t i = 0; i < drop_entries->num_entries; ++i) { for (size_t i = 0; i < drop_entries->num_entries; ++i) {
if (!pb_encode_tag_for_field(stream, field)) return false; if (!pb_encode_tag_for_field(stream, field)) return false;
@ -104,7 +107,8 @@ static bool encode_drops(pb_ostream_t *stream, const pb_field_t *field,
grpc_grpclb_request *grpc_grpclb_load_report_request_create_locked( grpc_grpclb_request *grpc_grpclb_load_report_request_create_locked(
grpc_grpclb_client_stats *client_stats) { grpc_grpclb_client_stats *client_stats) {
grpc_grpclb_request *req = gpr_zalloc(sizeof(grpc_grpclb_request)); grpc_grpclb_request *req =
(grpc_grpclb_request *)gpr_zalloc(sizeof(grpc_grpclb_request));
req->has_client_stats = true; req->has_client_stats = true;
req->client_stats.has_timestamp = true; req->client_stats.has_timestamp = true;
populate_timestamp(gpr_now(GPR_CLOCK_REALTIME), &req->client_stats.timestamp); populate_timestamp(gpr_now(GPR_CLOCK_REALTIME), &req->client_stats.timestamp);
@ -179,7 +183,8 @@ grpc_grpclb_serverlist *grpc_grpclb_response_parse_serverlist(
pb_istream_from_buffer(GRPC_SLICE_START_PTR(encoded_grpc_grpclb_response), pb_istream_from_buffer(GRPC_SLICE_START_PTR(encoded_grpc_grpclb_response),
GRPC_SLICE_LENGTH(encoded_grpc_grpclb_response)); GRPC_SLICE_LENGTH(encoded_grpc_grpclb_response));
pb_istream_t stream_at_start = stream; pb_istream_t stream_at_start = stream;
grpc_grpclb_serverlist *sl = gpr_zalloc(sizeof(grpc_grpclb_serverlist)); grpc_grpclb_serverlist *sl =
(grpc_grpclb_serverlist *)gpr_zalloc(sizeof(grpc_grpclb_serverlist));
grpc_grpclb_response res; grpc_grpclb_response res;
memset(&res, 0, sizeof(grpc_grpclb_response)); memset(&res, 0, sizeof(grpc_grpclb_response));
// First pass: count number of servers. // First pass: count number of servers.
@ -193,7 +198,8 @@ grpc_grpclb_serverlist *grpc_grpclb_response_parse_serverlist(
} }
// Second pass: populate servers. // Second pass: populate servers.
if (sl->num_servers > 0) { if (sl->num_servers > 0) {
sl->servers = gpr_zalloc(sizeof(grpc_grpclb_server *) * sl->num_servers); sl->servers = (grpc_grpclb_server **)gpr_zalloc(
sizeof(grpc_grpclb_server *) * sl->num_servers);
decode_serverlist_arg decode_arg; decode_serverlist_arg decode_arg;
memset(&decode_arg, 0, sizeof(decode_arg)); memset(&decode_arg, 0, sizeof(decode_arg));
decode_arg.serverlist = sl; decode_arg.serverlist = sl;
@ -226,13 +232,16 @@ void grpc_grpclb_destroy_serverlist(grpc_grpclb_serverlist *serverlist) {
grpc_grpclb_serverlist *grpc_grpclb_serverlist_copy( grpc_grpclb_serverlist *grpc_grpclb_serverlist_copy(
const grpc_grpclb_serverlist *sl) { const grpc_grpclb_serverlist *sl) {
grpc_grpclb_serverlist *copy = gpr_zalloc(sizeof(grpc_grpclb_serverlist)); grpc_grpclb_serverlist *copy =
(grpc_grpclb_serverlist *)gpr_zalloc(sizeof(grpc_grpclb_serverlist));
copy->num_servers = sl->num_servers; copy->num_servers = sl->num_servers;
memcpy(&copy->expiration_interval, &sl->expiration_interval, memcpy(&copy->expiration_interval, &sl->expiration_interval,
sizeof(grpc_grpclb_duration)); sizeof(grpc_grpclb_duration));
copy->servers = gpr_malloc(sizeof(grpc_grpclb_server *) * sl->num_servers); copy->servers = (grpc_grpclb_server **)gpr_malloc(
sizeof(grpc_grpclb_server *) * sl->num_servers);
for (size_t i = 0; i < sl->num_servers; i++) { for (size_t i = 0; i < sl->num_servers; i++) {
copy->servers[i] = gpr_malloc(sizeof(grpc_grpclb_server)); copy->servers[i] =
(grpc_grpclb_server *)gpr_malloc(sizeof(grpc_grpclb_server));
memcpy(copy->servers[i], sl->servers[i], sizeof(grpc_grpclb_server)); memcpy(copy->servers[i], sl->servers[i], sizeof(grpc_grpclb_server));
} }
return copy; return copy;

@ -217,7 +217,7 @@ static int pf_pick_locked(grpc_exec_ctx *exec_ctx, grpc_lb_policy *pol,
if (!p->started_picking) { if (!p->started_picking) {
start_picking_locked(exec_ctx, p); start_picking_locked(exec_ctx, p);
} }
pp = gpr_malloc(sizeof(*pp)); pp = (pending_pick *)gpr_malloc(sizeof(*pp));
pp->next = p->pending_picks; pp->next = p->pending_picks;
pp->target = target; pp->target = target;
pp->initial_metadata_flags = pick_args->initial_metadata_flags; pp->initial_metadata_flags = pick_args->initial_metadata_flags;
@ -314,7 +314,8 @@ static void pf_update_locked(grpc_exec_ctx *exec_ctx, grpc_lb_policy *policy,
} }
return; return;
} }
const grpc_lb_addresses *addresses = arg->value.pointer.p; const grpc_lb_addresses *addresses =
(const grpc_lb_addresses *)arg->value.pointer.p;
if (addresses->num_addresses == 0) { if (addresses->num_addresses == 0) {
// Empty update. Unsubscribe from all current subchannels and put the // Empty update. Unsubscribe from all current subchannels and put the
// channel in TRANSIENT_FAILURE. // channel in TRANSIENT_FAILURE.
@ -392,7 +393,8 @@ static void pf_update_locked(grpc_exec_ctx *exec_ctx, grpc_lb_policy *policy,
grpc_channel_args_destroy(exec_ctx, p->pending_update_args->args); grpc_channel_args_destroy(exec_ctx, p->pending_update_args->args);
gpr_free(p->pending_update_args); gpr_free(p->pending_update_args);
} }
p->pending_update_args = gpr_zalloc(sizeof(*p->pending_update_args)); p->pending_update_args =
(grpc_lb_policy_args *)gpr_zalloc(sizeof(*p->pending_update_args));
p->pending_update_args->client_channel_factory = p->pending_update_args->client_channel_factory =
args->client_channel_factory; args->client_channel_factory;
p->pending_update_args->args = grpc_channel_args_copy(args->args); p->pending_update_args->args = grpc_channel_args_copy(args->args);
@ -456,7 +458,7 @@ static void pf_update_locked(grpc_exec_ctx *exec_ctx, grpc_lb_policy *policy,
static void pf_connectivity_changed_locked(grpc_exec_ctx *exec_ctx, void *arg, static void pf_connectivity_changed_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
pick_first_lb_policy *p = arg; pick_first_lb_policy *p = (pick_first_lb_policy *)arg;
grpc_subchannel *selected_subchannel; grpc_subchannel *selected_subchannel;
pending_pick *pp; pending_pick *pp;
@ -678,7 +680,7 @@ static grpc_lb_policy *create_pick_first(grpc_exec_ctx *exec_ctx,
grpc_lb_policy_factory *factory, grpc_lb_policy_factory *factory,
grpc_lb_policy_args *args) { grpc_lb_policy_args *args) {
GPR_ASSERT(args->client_channel_factory != NULL); GPR_ASSERT(args->client_channel_factory != NULL);
pick_first_lb_policy *p = gpr_zalloc(sizeof(*p)); pick_first_lb_policy *p = (pick_first_lb_policy *)gpr_zalloc(sizeof(*p));
if (GRPC_TRACER_ON(grpc_lb_pick_first_trace)) { if (GRPC_TRACER_ON(grpc_lb_pick_first_trace)) {
gpr_log(GPR_DEBUG, "Pick First %p created.", (void *)p); gpr_log(GPR_DEBUG, "Pick First %p created.", (void *)p);
} }

@ -144,10 +144,11 @@ struct rr_subchannel_list {
static rr_subchannel_list *rr_subchannel_list_create(round_robin_lb_policy *p, static rr_subchannel_list *rr_subchannel_list_create(round_robin_lb_policy *p,
size_t num_subchannels) { size_t num_subchannels) {
rr_subchannel_list *subchannel_list = gpr_zalloc(sizeof(*subchannel_list)); rr_subchannel_list *subchannel_list =
(rr_subchannel_list *)gpr_zalloc(sizeof(*subchannel_list));
subchannel_list->policy = p; subchannel_list->policy = p;
subchannel_list->subchannels = subchannel_list->subchannels =
gpr_zalloc(sizeof(subchannel_data) * num_subchannels); (subchannel_data *)gpr_zalloc(sizeof(subchannel_data) * num_subchannels);
subchannel_list->num_subchannels = num_subchannels; subchannel_list->num_subchannels = num_subchannels;
gpr_ref_init(&subchannel_list->refcount, 1); gpr_ref_init(&subchannel_list->refcount, 1);
if (GRPC_TRACER_ON(grpc_lb_round_robin_trace)) { if (GRPC_TRACER_ON(grpc_lb_round_robin_trace)) {
@ -452,7 +453,7 @@ static int rr_pick_locked(grpc_exec_ctx *exec_ctx, grpc_lb_policy *pol,
if (!p->started_picking) { if (!p->started_picking) {
start_picking_locked(exec_ctx, p); start_picking_locked(exec_ctx, p);
} }
pending_pick *pp = gpr_malloc(sizeof(*pp)); pending_pick *pp = (pending_pick *)gpr_malloc(sizeof(*pp));
pp->next = p->pending_picks; pp->next = p->pending_picks;
pp->target = target; pp->target = target;
pp->on_complete = on_complete; pp->on_complete = on_complete;
@ -553,7 +554,7 @@ static grpc_connectivity_state update_lb_connectivity_status_locked(
static void rr_connectivity_changed_locked(grpc_exec_ctx *exec_ctx, void *arg, static void rr_connectivity_changed_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
subchannel_data *sd = arg; subchannel_data *sd = (subchannel_data *)arg;
round_robin_lb_policy *p = sd->subchannel_list->policy; round_robin_lb_policy *p = sd->subchannel_list->policy;
if (GRPC_TRACER_ON(grpc_lb_round_robin_trace)) { if (GRPC_TRACER_ON(grpc_lb_round_robin_trace)) {
gpr_log( gpr_log(
@ -754,7 +755,7 @@ static void rr_update_locked(grpc_exec_ctx *exec_ctx, grpc_lb_policy *policy,
} }
return; return;
} }
grpc_lb_addresses *addresses = arg->value.pointer.p; grpc_lb_addresses *addresses = (grpc_lb_addresses *)arg->value.pointer.p;
rr_subchannel_list *subchannel_list = rr_subchannel_list *subchannel_list =
rr_subchannel_list_create(p, addresses->num_addresses); rr_subchannel_list_create(p, addresses->num_addresses);
if (addresses->num_addresses == 0) { if (addresses->num_addresses == 0) {
@ -887,7 +888,7 @@ static grpc_lb_policy *round_robin_create(grpc_exec_ctx *exec_ctx,
grpc_lb_policy_factory *factory, grpc_lb_policy_factory *factory,
grpc_lb_policy_args *args) { grpc_lb_policy_args *args) {
GPR_ASSERT(args->client_channel_factory != NULL); GPR_ASSERT(args->client_channel_factory != NULL);
round_robin_lb_policy *p = gpr_zalloc(sizeof(*p)); round_robin_lb_policy *p = (round_robin_lb_policy *)gpr_zalloc(sizeof(*p));
grpc_lb_policy_init(&p->base, &round_robin_lb_policy_vtable, args->combiner); grpc_lb_policy_init(&p->base, &round_robin_lb_policy_vtable, args->combiner);
grpc_connectivity_state_init(&p->state_tracker, GRPC_CHANNEL_IDLE, grpc_connectivity_state_init(&p->state_tracker, GRPC_CHANNEL_IDLE,
"round_robin"); "round_robin");

@ -28,11 +28,12 @@
grpc_lb_addresses* grpc_lb_addresses_create( grpc_lb_addresses* grpc_lb_addresses_create(
size_t num_addresses, const grpc_lb_user_data_vtable* user_data_vtable) { size_t num_addresses, const grpc_lb_user_data_vtable* user_data_vtable) {
grpc_lb_addresses* addresses = gpr_zalloc(sizeof(grpc_lb_addresses)); grpc_lb_addresses* addresses =
(grpc_lb_addresses*)gpr_zalloc(sizeof(grpc_lb_addresses));
addresses->num_addresses = num_addresses; addresses->num_addresses = num_addresses;
addresses->user_data_vtable = user_data_vtable; addresses->user_data_vtable = user_data_vtable;
const size_t addresses_size = sizeof(grpc_lb_address) * num_addresses; const size_t addresses_size = sizeof(grpc_lb_address) * num_addresses;
addresses->addresses = gpr_zalloc(addresses_size); addresses->addresses = (grpc_lb_address*)gpr_zalloc(addresses_size);
return addresses; return addresses;
} }

@ -34,7 +34,7 @@ typedef struct {
static void grpc_proxy_mapper_list_register(grpc_proxy_mapper_list* list, static void grpc_proxy_mapper_list_register(grpc_proxy_mapper_list* list,
bool at_start, bool at_start,
grpc_proxy_mapper* mapper) { grpc_proxy_mapper* mapper) {
list->list = gpr_realloc( list->list = (grpc_proxy_mapper**)gpr_realloc(
list->list, (list->num_mappers + 1) * sizeof(grpc_proxy_mapper*)); list->list, (list->num_mappers + 1) * sizeof(grpc_proxy_mapper*));
if (at_start) { if (at_start) {
memmove(list->list + 1, list->list, memmove(list->list + 1, list->list,

@ -144,7 +144,7 @@ static void dns_ares_channel_saw_error_locked(grpc_exec_ctx *exec_ctx,
static void dns_ares_on_retry_timer_locked(grpc_exec_ctx *exec_ctx, void *arg, static void dns_ares_on_retry_timer_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
ares_dns_resolver *r = arg; ares_dns_resolver *r = (ares_dns_resolver *)arg;
r->have_retry_timer = false; r->have_retry_timer = false;
if (error == GRPC_ERROR_NONE) { if (error == GRPC_ERROR_NONE) {
if (!r->resolving) { if (!r->resolving) {
@ -227,7 +227,7 @@ static char *choose_service_config(char *service_config_choice_json) {
static void dns_ares_on_resolved_locked(grpc_exec_ctx *exec_ctx, void *arg, static void dns_ares_on_resolved_locked(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
ares_dns_resolver *r = arg; ares_dns_resolver *r = (ares_dns_resolver *)arg;
grpc_channel_args *result = NULL; grpc_channel_args *result = NULL;
GPR_ASSERT(r->resolving); GPR_ASSERT(r->resolving);
r->resolving = false; r->resolving = false;
@ -363,7 +363,8 @@ static grpc_resolver *dns_ares_create(grpc_exec_ctx *exec_ctx,
const char *path = args->uri->path; const char *path = args->uri->path;
if (path[0] == '/') ++path; if (path[0] == '/') ++path;
/* Create resolver. */ /* Create resolver. */
ares_dns_resolver *r = gpr_zalloc(sizeof(ares_dns_resolver)); ares_dns_resolver *r =
(ares_dns_resolver *)gpr_zalloc(sizeof(ares_dns_resolver));
grpc_resolver_init(&r->base, &dns_ares_resolver_vtable, args->combiner); grpc_resolver_init(&r->base, &dns_ares_resolver_vtable, args->combiner);
if (0 != strcmp(args->uri->authority, "")) { if (0 != strcmp(args->uri->authority, "")) {
r->dns_server = gpr_strdup(args->uri->authority); r->dns_server = gpr_strdup(args->uri->authority);

@ -111,7 +111,7 @@ static void fd_node_destroy(grpc_exec_ctx *exec_ctx, fd_node *fdn) {
grpc_error *grpc_ares_ev_driver_create(grpc_ares_ev_driver **ev_driver, grpc_error *grpc_ares_ev_driver_create(grpc_ares_ev_driver **ev_driver,
grpc_pollset_set *pollset_set) { grpc_pollset_set *pollset_set) {
*ev_driver = gpr_malloc(sizeof(grpc_ares_ev_driver)); *ev_driver = (grpc_ares_ev_driver *)gpr_malloc(sizeof(grpc_ares_ev_driver));
int status = ares_init(&(*ev_driver)->channel); int status = ares_init(&(*ev_driver)->channel);
gpr_log(GPR_DEBUG, "grpc_ares_ev_driver_create"); gpr_log(GPR_DEBUG, "grpc_ares_ev_driver_create");
if (status != ARES_SUCCESS) { if (status != ARES_SUCCESS) {
@ -178,7 +178,7 @@ static fd_node *pop_fd_node(fd_node **head, int fd) {
static void on_readable_cb(grpc_exec_ctx *exec_ctx, void *arg, static void on_readable_cb(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
fd_node *fdn = arg; fd_node *fdn = (fd_node *)arg;
grpc_ares_ev_driver *ev_driver = fdn->ev_driver; grpc_ares_ev_driver *ev_driver = fdn->ev_driver;
gpr_mu_lock(&fdn->mu); gpr_mu_lock(&fdn->mu);
fdn->readable_registered = false; fdn->readable_registered = false;
@ -205,7 +205,7 @@ static void on_readable_cb(grpc_exec_ctx *exec_ctx, void *arg,
static void on_writable_cb(grpc_exec_ctx *exec_ctx, void *arg, static void on_writable_cb(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
fd_node *fdn = arg; fd_node *fdn = (fd_node *)arg;
grpc_ares_ev_driver *ev_driver = fdn->ev_driver; grpc_ares_ev_driver *ev_driver = fdn->ev_driver;
gpr_mu_lock(&fdn->mu); gpr_mu_lock(&fdn->mu);
fdn->writable_registered = false; fdn->writable_registered = false;
@ -251,7 +251,7 @@ static void grpc_ares_notify_on_event_locked(grpc_exec_ctx *exec_ctx,
if (fdn == NULL) { if (fdn == NULL) {
char *fd_name; char *fd_name;
gpr_asprintf(&fd_name, "ares_ev_driver-%" PRIuPTR, i); gpr_asprintf(&fd_name, "ares_ev_driver-%" PRIuPTR, i);
fdn = gpr_malloc(sizeof(fd_node)); fdn = (fd_node *)gpr_malloc(sizeof(fd_node));
gpr_log(GPR_DEBUG, "new fd: %d", socks[i]); gpr_log(GPR_DEBUG, "new fd: %d", socks[i]);
fdn->grpc_fd = grpc_fd_create(socks[i], fd_name); fdn->grpc_fd = grpc_fd_create(socks[i], fd_name);
fdn->ev_driver = ev_driver; fdn->ev_driver = ev_driver;

@ -158,9 +158,9 @@ static void on_hostbyname_done_cb(void *arg, int status, int timeouts,
for (i = 0; hostent->h_addr_list[i] != NULL; i++) { for (i = 0; hostent->h_addr_list[i] != NULL; i++) {
} }
(*lb_addresses)->num_addresses += i; (*lb_addresses)->num_addresses += i;
(*lb_addresses)->addresses = (*lb_addresses)->addresses = (grpc_lb_address *)gpr_realloc(
gpr_realloc((*lb_addresses)->addresses, (*lb_addresses)->addresses,
sizeof(grpc_lb_address) * (*lb_addresses)->num_addresses); sizeof(grpc_lb_address) * (*lb_addresses)->num_addresses);
for (i = prev_naddr; i < (*lb_addresses)->num_addresses; i++) { for (i = prev_naddr; i < (*lb_addresses)->num_addresses; i++) {
switch (hostent->h_addrtype) { switch (hostent->h_addrtype) {
case AF_INET6: { case AF_INET6: {
@ -293,12 +293,12 @@ static void on_txt_done_cb(void *arg, int status, int timeouts,
// Found a service config record. // Found a service config record.
if (result != NULL) { if (result != NULL) {
size_t service_config_len = result->length - prefix_len; size_t service_config_len = result->length - prefix_len;
*r->service_config_json_out = gpr_malloc(service_config_len + 1); *r->service_config_json_out = (char *)gpr_malloc(service_config_len + 1);
memcpy(*r->service_config_json_out, result->txt + prefix_len, memcpy(*r->service_config_json_out, result->txt + prefix_len,
service_config_len); service_config_len);
for (result = result->next; result != NULL && !result->record_start; for (result = result->next; result != NULL && !result->record_start;
result = result->next) { result = result->next) {
*r->service_config_json_out = gpr_realloc( *r->service_config_json_out = (char *)gpr_realloc(
*r->service_config_json_out, service_config_len + result->length + 1); *r->service_config_json_out, service_config_len + result->length + 1);
memcpy(*r->service_config_json_out + service_config_len, result->txt, memcpy(*r->service_config_json_out + service_config_len, result->txt,
result->length); result->length);
@ -360,7 +360,8 @@ static grpc_ares_request *grpc_dns_lookup_ares_impl(
error = grpc_ares_ev_driver_create(&ev_driver, interested_parties); error = grpc_ares_ev_driver_create(&ev_driver, interested_parties);
if (error != GRPC_ERROR_NONE) goto error_cleanup; if (error != GRPC_ERROR_NONE) goto error_cleanup;
grpc_ares_request *r = gpr_zalloc(sizeof(grpc_ares_request)); grpc_ares_request *r =
(grpc_ares_request *)gpr_zalloc(sizeof(grpc_ares_request));
gpr_mu_init(&r->mu); gpr_mu_init(&r->mu);
r->ev_driver = ev_driver; r->ev_driver = ev_driver;
r->on_done = on_done; r->on_done = on_done;
@ -502,10 +503,11 @@ static void on_dns_lookup_done_cb(grpc_exec_ctx *exec_ctx, void *arg,
if (r->lb_addrs == NULL || r->lb_addrs->num_addresses == 0) { if (r->lb_addrs == NULL || r->lb_addrs->num_addresses == 0) {
*resolved_addresses = NULL; *resolved_addresses = NULL;
} else { } else {
*resolved_addresses = gpr_zalloc(sizeof(grpc_resolved_addresses)); *resolved_addresses =
(grpc_resolved_addresses *)gpr_zalloc(sizeof(grpc_resolved_addresses));
(*resolved_addresses)->naddrs = r->lb_addrs->num_addresses; (*resolved_addresses)->naddrs = r->lb_addrs->num_addresses;
(*resolved_addresses)->addrs = gpr_zalloc(sizeof(grpc_resolved_address) * (*resolved_addresses)->addrs = (grpc_resolved_address *)gpr_zalloc(
(*resolved_addresses)->naddrs); sizeof(grpc_resolved_address) * (*resolved_addresses)->naddrs);
for (size_t i = 0; i < (*resolved_addresses)->naddrs; i++) { for (size_t i = 0; i < (*resolved_addresses)->naddrs; i++) {
GPR_ASSERT(!r->lb_addrs->addresses[i].is_balancer); GPR_ASSERT(!r->lb_addrs->addresses[i].is_balancer);
memcpy(&(*resolved_addresses)->addrs[i], memcpy(&(*resolved_addresses)->addrs[i],

@ -139,12 +139,14 @@ static long compare_server_name(void* key1, void* key2, void* unused) {
} }
static void destroy_server_retry_throttle_data(void* value, void* unused) { static void destroy_server_retry_throttle_data(void* value, void* unused) {
grpc_server_retry_throttle_data* throttle_data = value; grpc_server_retry_throttle_data* throttle_data =
(grpc_server_retry_throttle_data*)value;
grpc_server_retry_throttle_data_unref(throttle_data); grpc_server_retry_throttle_data_unref(throttle_data);
} }
static void* copy_server_retry_throttle_data(void* value, void* unused) { static void* copy_server_retry_throttle_data(void* value, void* unused) {
grpc_server_retry_throttle_data* throttle_data = value; grpc_server_retry_throttle_data* throttle_data =
(grpc_server_retry_throttle_data*)value;
return grpc_server_retry_throttle_data_ref(throttle_data); return grpc_server_retry_throttle_data_ref(throttle_data);
} }

@ -157,7 +157,7 @@ static void subchannel_connected(grpc_exec_ctx *exec_ctx, void *subchannel,
static void connection_destroy(grpc_exec_ctx *exec_ctx, void *arg, static void connection_destroy(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_connected_subchannel *c = arg; grpc_connected_subchannel *c = (grpc_connected_subchannel *)arg;
grpc_channel_stack_destroy(exec_ctx, CHANNEL_STACK_FROM_CONNECTION(c)); grpc_channel_stack_destroy(exec_ctx, CHANNEL_STACK_FROM_CONNECTION(c));
gpr_free(c); gpr_free(c);
} }
@ -181,7 +181,7 @@ void grpc_connected_subchannel_unref(grpc_exec_ctx *exec_ctx,
static void subchannel_destroy(grpc_exec_ctx *exec_ctx, void *arg, static void subchannel_destroy(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_subchannel *c = arg; grpc_subchannel *c = (grpc_subchannel *)arg;
gpr_free((void *)c->filters); gpr_free((void *)c->filters);
grpc_channel_args_destroy(exec_ctx, c->args); grpc_channel_args_destroy(exec_ctx, c->args);
grpc_connectivity_state_destroy(exec_ctx, &c->state_tracker); grpc_connectivity_state_destroy(exec_ctx, &c->state_tracker);
@ -290,21 +290,23 @@ grpc_subchannel *grpc_subchannel_create(grpc_exec_ctx *exec_ctx,
return c; return c;
} }
c = gpr_zalloc(sizeof(*c)); c = (grpc_subchannel *)gpr_zalloc(sizeof(*c));
c->key = key; c->key = key;
gpr_atm_no_barrier_store(&c->ref_pair, 1 << INTERNAL_REF_BITS); gpr_atm_no_barrier_store(&c->ref_pair, 1 << INTERNAL_REF_BITS);
c->connector = connector; c->connector = connector;
grpc_connector_ref(c->connector); grpc_connector_ref(c->connector);
c->num_filters = args->filter_count; c->num_filters = args->filter_count;
if (c->num_filters > 0) { if (c->num_filters > 0) {
c->filters = gpr_malloc(sizeof(grpc_channel_filter *) * c->num_filters); c->filters = (const grpc_channel_filter **)gpr_malloc(
sizeof(grpc_channel_filter *) * c->num_filters);
memcpy((void *)c->filters, args->filters, memcpy((void *)c->filters, args->filters,
sizeof(grpc_channel_filter *) * c->num_filters); sizeof(grpc_channel_filter *) * c->num_filters);
} else { } else {
c->filters = NULL; c->filters = NULL;
} }
c->pollset_set = grpc_pollset_set_create(); c->pollset_set = grpc_pollset_set_create();
grpc_resolved_address *addr = gpr_malloc(sizeof(*addr)); grpc_resolved_address *addr =
(grpc_resolved_address *)gpr_malloc(sizeof(*addr));
grpc_get_subchannel_address_arg(exec_ctx, args->args, addr); grpc_get_subchannel_address_arg(exec_ctx, args->args, addr);
grpc_resolved_address *new_address = NULL; grpc_resolved_address *new_address = NULL;
grpc_channel_args *new_args = NULL; grpc_channel_args *new_args = NULL;
@ -400,7 +402,7 @@ grpc_connectivity_state grpc_subchannel_check_connectivity(grpc_subchannel *c,
static void on_external_state_watcher_done(grpc_exec_ctx *exec_ctx, void *arg, static void on_external_state_watcher_done(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
external_state_watcher *w = arg; external_state_watcher *w = (external_state_watcher *)arg;
grpc_closure *follow_up = w->notify; grpc_closure *follow_up = w->notify;
if (w->pollset_set != NULL) { if (w->pollset_set != NULL) {
grpc_pollset_set_del_pollset_set(exec_ctx, w->subchannel->pollset_set, grpc_pollset_set_del_pollset_set(exec_ctx, w->subchannel->pollset_set,
@ -416,7 +418,7 @@ static void on_external_state_watcher_done(grpc_exec_ctx *exec_ctx, void *arg,
} }
static void on_alarm(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) { static void on_alarm(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
grpc_subchannel *c = arg; grpc_subchannel *c = (grpc_subchannel *)arg;
gpr_mu_lock(&c->mu); gpr_mu_lock(&c->mu);
c->have_alarm = false; c->have_alarm = false;
if (c->disconnected) { if (c->disconnected) {
@ -501,7 +503,7 @@ void grpc_subchannel_notify_on_state_change(
} }
gpr_mu_unlock(&c->mu); gpr_mu_unlock(&c->mu);
} else { } else {
w = gpr_malloc(sizeof(*w)); w = (external_state_watcher *)gpr_malloc(sizeof(*w));
w->subchannel = c; w->subchannel = c;
w->pollset_set = interested_parties; w->pollset_set = interested_parties;
w->notify = notify; w->notify = notify;
@ -533,7 +535,7 @@ void grpc_connected_subchannel_process_transport_op(
static void subchannel_on_child_state_changed(grpc_exec_ctx *exec_ctx, void *p, static void subchannel_on_child_state_changed(grpc_exec_ctx *exec_ctx, void *p,
grpc_error *error) { grpc_error *error) {
state_watcher *sw = p; state_watcher *sw = (state_watcher *)p;
grpc_subchannel *c = sw->subchannel; grpc_subchannel *c = sw->subchannel;
gpr_mu *mu = &c->mu; gpr_mu *mu = &c->mu;
@ -623,7 +625,7 @@ static bool publish_transport_locked(grpc_exec_ctx *exec_ctx,
memset(&c->connecting_result, 0, sizeof(c->connecting_result)); memset(&c->connecting_result, 0, sizeof(c->connecting_result));
/* initialize state watcher */ /* initialize state watcher */
sw_subchannel = gpr_malloc(sizeof(*sw_subchannel)); sw_subchannel = (state_watcher *)gpr_malloc(sizeof(*sw_subchannel));
sw_subchannel->subchannel = c; sw_subchannel->subchannel = c;
sw_subchannel->connectivity_state = GRPC_CHANNEL_READY; sw_subchannel->connectivity_state = GRPC_CHANNEL_READY;
GRPC_CLOSURE_INIT(&sw_subchannel->closure, subchannel_on_child_state_changed, GRPC_CLOSURE_INIT(&sw_subchannel->closure, subchannel_on_child_state_changed,
@ -660,7 +662,7 @@ static bool publish_transport_locked(grpc_exec_ctx *exec_ctx,
static void subchannel_connected(grpc_exec_ctx *exec_ctx, void *arg, static void subchannel_connected(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_subchannel *c = arg; grpc_subchannel *c = (grpc_subchannel *)arg;
grpc_channel_args *delete_channel_args = c->connecting_result.channel_args; grpc_channel_args *delete_channel_args = c->connecting_result.channel_args;
GRPC_SUBCHANNEL_WEAK_REF(c, "connected"); GRPC_SUBCHANNEL_WEAK_REF(c, "connected");
@ -696,7 +698,7 @@ static void subchannel_connected(grpc_exec_ctx *exec_ctx, void *arg,
static void subchannel_call_destroy(grpc_exec_ctx *exec_ctx, void *call, static void subchannel_call_destroy(grpc_exec_ctx *exec_ctx, void *call,
grpc_error *error) { grpc_error *error) {
grpc_subchannel_call *c = call; grpc_subchannel_call *c = (grpc_subchannel_call *)call;
GPR_ASSERT(c->schedule_closure_after_destroy != NULL); GPR_ASSERT(c->schedule_closure_after_destroy != NULL);
GPR_TIMER_BEGIN("grpc_subchannel_call_unref.destroy", 0); GPR_TIMER_BEGIN("grpc_subchannel_call_unref.destroy", 0);
grpc_connected_subchannel *connection = c->connection; grpc_connected_subchannel *connection = c->connection;
@ -750,7 +752,7 @@ grpc_error *grpc_connected_subchannel_create_call(
const grpc_connected_subchannel_call_args *args, const grpc_connected_subchannel_call_args *args,
grpc_subchannel_call **call) { grpc_subchannel_call **call) {
grpc_channel_stack *chanstk = CHANNEL_STACK_FROM_CONNECTION(con); grpc_channel_stack *chanstk = CHANNEL_STACK_FROM_CONNECTION(con);
*call = gpr_arena_alloc( *call = (grpc_subchannel_call *)gpr_arena_alloc(
args->arena, sizeof(grpc_subchannel_call) + chanstk->call_stack_size); args->arena, sizeof(grpc_subchannel_call) + chanstk->call_stack_size);
grpc_call_stack *callstk = SUBCHANNEL_CALL_TO_CALL_STACK(*call); grpc_call_stack *callstk = SUBCHANNEL_CALL_TO_CALL_STACK(*call);
(*call)->connection = GRPC_CONNECTED_SUBCHANNEL_REF(con, "subchannel_call"); (*call)->connection = GRPC_CONNECTED_SUBCHANNEL_REF(con, "subchannel_call");

@ -43,11 +43,11 @@ static bool g_force_creation = false;
static grpc_subchannel_key *create_key( static grpc_subchannel_key *create_key(
const grpc_subchannel_args *args, const grpc_subchannel_args *args,
grpc_channel_args *(*copy_channel_args)(const grpc_channel_args *args)) { grpc_channel_args *(*copy_channel_args)(const grpc_channel_args *args)) {
grpc_subchannel_key *k = gpr_malloc(sizeof(*k)); grpc_subchannel_key *k = (grpc_subchannel_key *)gpr_malloc(sizeof(*k));
k->args.filter_count = args->filter_count; k->args.filter_count = args->filter_count;
if (k->args.filter_count > 0) { if (k->args.filter_count > 0) {
k->args.filters = k->args.filters = (const grpc_channel_filter **)gpr_malloc(
gpr_malloc(sizeof(*k->args.filters) * k->args.filter_count); sizeof(*k->args.filters) * k->args.filter_count);
memcpy((grpc_channel_filter *)k->args.filters, args->filters, memcpy((grpc_channel_filter *)k->args.filters, args->filters,
sizeof(*k->args.filters) * k->args.filter_count); sizeof(*k->args.filters) * k->args.filter_count);
} else { } else {
@ -136,7 +136,7 @@ grpc_subchannel *grpc_subchannel_index_find(grpc_exec_ctx *exec_ctx,
gpr_avl index = gpr_avl_ref(g_subchannel_index, exec_ctx); gpr_avl index = gpr_avl_ref(g_subchannel_index, exec_ctx);
gpr_mu_unlock(&g_mu); gpr_mu_unlock(&g_mu);
grpc_subchannel *c = GRPC_SUBCHANNEL_REF_FROM_WEAK_REF( grpc_subchannel *c = (grpc_subchannel *)GRPC_SUBCHANNEL_REF_FROM_WEAK_REF(
gpr_avl_get(index, key, exec_ctx), "index_find"); gpr_avl_get(index, key, exec_ctx), "index_find");
gpr_avl_unref(index, exec_ctx); gpr_avl_unref(index, exec_ctx);
@ -159,7 +159,7 @@ grpc_subchannel *grpc_subchannel_index_register(grpc_exec_ctx *exec_ctx,
gpr_mu_unlock(&g_mu); gpr_mu_unlock(&g_mu);
// - Check to see if a subchannel already exists // - Check to see if a subchannel already exists
c = gpr_avl_get(index, key, exec_ctx); c = (grpc_subchannel *)gpr_avl_get(index, key, exec_ctx);
if (c != NULL) { if (c != NULL) {
c = GRPC_SUBCHANNEL_REF_FROM_WEAK_REF(c, "index_register"); c = GRPC_SUBCHANNEL_REF_FROM_WEAK_REF(c, "index_register");
} }
@ -207,7 +207,7 @@ void grpc_subchannel_index_unregister(grpc_exec_ctx *exec_ctx,
// Check to see if this key still refers to the previously // Check to see if this key still refers to the previously
// registered subchannel // registered subchannel
grpc_subchannel *c = gpr_avl_get(index, key, exec_ctx); grpc_subchannel *c = (grpc_subchannel *)gpr_avl_get(index, key, exec_ctx);
if (c != constructed) { if (c != constructed) {
gpr_avl_unref(index, exec_ctx); gpr_avl_unref(index, exec_ctx);
break; break;

@ -45,7 +45,7 @@ static grpc_uri *bad_uri(const char *uri_text, size_t pos, const char *section,
gpr_log(GPR_ERROR, "%s%s'", line_prefix, uri_text); gpr_log(GPR_ERROR, "%s%s'", line_prefix, uri_text);
gpr_free(line_prefix); gpr_free(line_prefix);
line_prefix = gpr_malloc(pfx_len + 1); line_prefix = (char *)gpr_malloc(pfx_len + 1);
memset(line_prefix, ' ', pfx_len); memset(line_prefix, ' ', pfx_len);
line_prefix[pfx_len] = 0; line_prefix[pfx_len] = 0;
gpr_log(GPR_ERROR, "%s^ here", line_prefix); gpr_log(GPR_ERROR, "%s^ here", line_prefix);
@ -156,7 +156,8 @@ static void parse_query_parts(grpc_uri *uri) {
gpr_string_split(uri->query, QUERY_PARTS_SEPARATOR, &uri->query_parts, gpr_string_split(uri->query, QUERY_PARTS_SEPARATOR, &uri->query_parts,
&uri->num_query_parts); &uri->num_query_parts);
uri->query_parts_values = gpr_malloc(uri->num_query_parts * sizeof(char **)); uri->query_parts_values =
(char **)gpr_malloc(uri->num_query_parts * sizeof(char **));
for (size_t i = 0; i < uri->num_query_parts; i++) { for (size_t i = 0; i < uri->num_query_parts; i++) {
char **query_param_parts; char **query_param_parts;
size_t num_query_param_parts; size_t num_query_param_parts;
@ -269,7 +270,7 @@ grpc_uri *grpc_uri_parse(grpc_exec_ctx *exec_ctx, const char *uri_text,
fragment_end = i; fragment_end = i;
} }
uri = gpr_zalloc(sizeof(*uri)); uri = (grpc_uri *)gpr_zalloc(sizeof(*uri));
uri->scheme = uri->scheme =
decode_and_copy_component(exec_ctx, uri_text, scheme_begin, scheme_end); decode_and_copy_component(exec_ctx, uri_text, scheme_begin, scheme_end);
uri->authority = decode_and_copy_component(exec_ctx, uri_text, uri->authority = decode_and_copy_component(exec_ctx, uri_text,

@ -38,7 +38,7 @@
// filter stack. Yields the call combiner when the batch returns. // filter stack. Yields the call combiner when the batch returns.
static void yield_call_combiner(grpc_exec_ctx* exec_ctx, void* arg, static void yield_call_combiner(grpc_exec_ctx* exec_ctx, void* arg,
grpc_error* ignored) { grpc_error* ignored) {
grpc_deadline_state* deadline_state = arg; grpc_deadline_state* deadline_state = (grpc_deadline_state*)arg;
GRPC_CALL_COMBINER_STOP(exec_ctx, deadline_state->call_combiner, GRPC_CALL_COMBINER_STOP(exec_ctx, deadline_state->call_combiner,
"got on_complete from cancel_stream batch"); "got on_complete from cancel_stream batch");
GRPC_CALL_STACK_UNREF(exec_ctx, deadline_state->call_stack, "deadline_timer"); GRPC_CALL_STACK_UNREF(exec_ctx, deadline_state->call_stack, "deadline_timer");
@ -48,8 +48,8 @@ static void yield_call_combiner(grpc_exec_ctx* exec_ctx, void* arg,
// synchronized. // synchronized.
static void send_cancel_op_in_call_combiner(grpc_exec_ctx* exec_ctx, void* arg, static void send_cancel_op_in_call_combiner(grpc_exec_ctx* exec_ctx, void* arg,
grpc_error* error) { grpc_error* error) {
grpc_call_element* elem = arg; grpc_call_element* elem = (grpc_call_element*)arg;
grpc_deadline_state* deadline_state = elem->call_data; grpc_deadline_state* deadline_state = (grpc_deadline_state*)elem->call_data;
grpc_transport_stream_op_batch* batch = grpc_make_transport_stream_op( grpc_transport_stream_op_batch* batch = grpc_make_transport_stream_op(
GRPC_CLOSURE_INIT(&deadline_state->timer_callback, yield_call_combiner, GRPC_CLOSURE_INIT(&deadline_state->timer_callback, yield_call_combiner,
deadline_state, grpc_schedule_on_exec_ctx)); deadline_state, grpc_schedule_on_exec_ctx));
@ -160,8 +160,10 @@ struct start_timer_after_init_state {
}; };
static void start_timer_after_init(grpc_exec_ctx* exec_ctx, void* arg, static void start_timer_after_init(grpc_exec_ctx* exec_ctx, void* arg,
grpc_error* error) { grpc_error* error) {
struct start_timer_after_init_state* state = arg; struct start_timer_after_init_state* state =
grpc_deadline_state* deadline_state = state->elem->call_data; (struct start_timer_after_init_state*)arg;
grpc_deadline_state* deadline_state =
(grpc_deadline_state*)state->elem->call_data;
if (!state->in_call_combiner) { if (!state->in_call_combiner) {
// We are initially called without holding the call combiner, so we // We are initially called without holding the call combiner, so we
// need to bounce ourselves into it. // need to bounce ourselves into it.
@ -195,7 +197,8 @@ void grpc_deadline_state_init(grpc_exec_ctx* exec_ctx, grpc_call_element* elem,
// call stack initialization is finished. To avoid that problem, we // call stack initialization is finished. To avoid that problem, we
// create a closure to start the timer, and we schedule that closure // create a closure to start the timer, and we schedule that closure
// to be run after call stack initialization is done. // to be run after call stack initialization is done.
struct start_timer_after_init_state* state = gpr_zalloc(sizeof(*state)); struct start_timer_after_init_state* state =
(struct start_timer_after_init_state*)gpr_zalloc(sizeof(*state));
state->elem = elem; state->elem = elem;
state->deadline = deadline; state->deadline = deadline;
GRPC_CLOSURE_INIT(&state->closure, start_timer_after_init, state, GRPC_CLOSURE_INIT(&state->closure, start_timer_after_init, state,

@ -139,8 +139,8 @@ static grpc_error *client_filter_incoming_metadata(grpc_exec_ctx *exec_ctx,
static void recv_initial_metadata_ready(grpc_exec_ctx *exec_ctx, static void recv_initial_metadata_ready(grpc_exec_ctx *exec_ctx,
void *user_data, grpc_error *error) { void *user_data, grpc_error *error) {
grpc_call_element *elem = user_data; grpc_call_element *elem = (grpc_call_element *)user_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (error == GRPC_ERROR_NONE) { if (error == GRPC_ERROR_NONE) {
error = client_filter_incoming_metadata(exec_ctx, elem, error = client_filter_incoming_metadata(exec_ctx, elem,
calld->recv_initial_metadata); calld->recv_initial_metadata);
@ -154,8 +154,8 @@ static void recv_initial_metadata_ready(grpc_exec_ctx *exec_ctx,
static void recv_trailing_metadata_on_complete(grpc_exec_ctx *exec_ctx, static void recv_trailing_metadata_on_complete(grpc_exec_ctx *exec_ctx,
void *user_data, void *user_data,
grpc_error *error) { grpc_error *error) {
grpc_call_element *elem = user_data; grpc_call_element *elem = (grpc_call_element *)user_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (error == GRPC_ERROR_NONE) { if (error == GRPC_ERROR_NONE) {
error = client_filter_incoming_metadata(exec_ctx, elem, error = client_filter_incoming_metadata(exec_ctx, elem,
calld->recv_trailing_metadata); calld->recv_trailing_metadata);
@ -234,7 +234,7 @@ static void on_send_message_next_done(grpc_exec_ctx *exec_ctx, void *arg,
} }
static char *slice_buffer_to_string(grpc_slice_buffer *slice_buffer) { static char *slice_buffer_to_string(grpc_slice_buffer *slice_buffer) {
char *payload_bytes = gpr_malloc(slice_buffer->length + 1); char *payload_bytes = (char *)gpr_malloc(slice_buffer->length + 1);
size_t offset = 0; size_t offset = 0;
for (size_t i = 0; i < slice_buffer->count; ++i) { for (size_t i = 0; i < slice_buffer->count; ++i) {
memcpy(payload_bytes + offset, memcpy(payload_bytes + offset,
@ -300,8 +300,8 @@ static void remove_if_present(grpc_exec_ctx *exec_ctx,
static void hc_start_transport_stream_op_batch( static void hc_start_transport_stream_op_batch(
grpc_exec_ctx *exec_ctx, grpc_call_element *elem, grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
grpc_transport_stream_op_batch *batch) { grpc_transport_stream_op_batch *batch) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
channel_data *channeld = elem->channel_data; channel_data *channeld = (channel_data *)elem->channel_data;
GPR_TIMER_BEGIN("hc_start_transport_stream_op_batch", 0); GPR_TIMER_BEGIN("hc_start_transport_stream_op_batch", 0);
if (batch->recv_initial_metadata) { if (batch->recv_initial_metadata) {
@ -536,7 +536,7 @@ static grpc_slice user_agent_from_args(const grpc_channel_args *args,
static grpc_error *init_channel_elem(grpc_exec_ctx *exec_ctx, static grpc_error *init_channel_elem(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem, grpc_channel_element *elem,
grpc_channel_element_args *args) { grpc_channel_element_args *args) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
GPR_ASSERT(!args->is_last); GPR_ASSERT(!args->is_last);
GPR_ASSERT(args->optional_transport != NULL); GPR_ASSERT(args->optional_transport != NULL);
chand->static_scheme = scheme_from_args(args->channel_args); chand->static_scheme = scheme_from_args(args->channel_args);
@ -552,7 +552,7 @@ static grpc_error *init_channel_elem(grpc_exec_ctx *exec_ctx,
/* Destructor for channel data */ /* Destructor for channel data */
static void destroy_channel_elem(grpc_exec_ctx *exec_ctx, static void destroy_channel_elem(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem) { grpc_channel_element *elem) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
GRPC_MDELEM_UNREF(exec_ctx, chand->user_agent); GRPC_MDELEM_UNREF(exec_ctx, chand->user_agent);
} }

@ -44,7 +44,7 @@ static bool maybe_add_optional_filter(grpc_exec_ctx *exec_ctx,
grpc_channel_stack_builder *builder, grpc_channel_stack_builder *builder,
void *arg) { void *arg) {
if (!is_building_http_like_transport(builder)) return true; if (!is_building_http_like_transport(builder)) return true;
optional_filter *filtarg = arg; optional_filter *filtarg = (optional_filter *)arg;
const grpc_channel_args *channel_args = const grpc_channel_args *channel_args =
grpc_channel_stack_builder_get_channel_arguments(builder); grpc_channel_stack_builder_get_channel_arguments(builder);
bool enable = grpc_channel_arg_get_bool( bool enable = grpc_channel_arg_get_bool(

@ -82,8 +82,8 @@ typedef struct channel_data {
static bool skip_compression(grpc_call_element *elem, uint32_t flags, static bool skip_compression(grpc_call_element *elem, uint32_t flags,
bool has_compression_algorithm) { bool has_compression_algorithm) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
channel_data *channeld = elem->channel_data; channel_data *channeld = (channel_data *)elem->channel_data;
if (flags & (GRPC_WRITE_NO_COMPRESS | GRPC_WRITE_INTERNAL_COMPRESS)) { if (flags & (GRPC_WRITE_NO_COMPRESS | GRPC_WRITE_INTERNAL_COMPRESS)) {
return true; return true;
@ -106,8 +106,8 @@ static grpc_error *process_send_initial_metadata(
static grpc_error *process_send_initial_metadata( static grpc_error *process_send_initial_metadata(
grpc_exec_ctx *exec_ctx, grpc_call_element *elem, grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
grpc_metadata_batch *initial_metadata, bool *has_compression_algorithm) { grpc_metadata_batch *initial_metadata, bool *has_compression_algorithm) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
channel_data *channeld = elem->channel_data; channel_data *channeld = (channel_data *)elem->channel_data;
*has_compression_algorithm = false; *has_compression_algorithm = false;
grpc_stream_compression_algorithm stream_compression_algorithm = grpc_stream_compression_algorithm stream_compression_algorithm =
GRPC_STREAM_COMPRESS_NONE; GRPC_STREAM_COMPRESS_NONE;
@ -285,7 +285,7 @@ static void finish_send_message(grpc_exec_ctx *exec_ctx,
static void fail_send_message_batch_in_call_combiner(grpc_exec_ctx *exec_ctx, static void fail_send_message_batch_in_call_combiner(grpc_exec_ctx *exec_ctx,
void *arg, void *arg,
grpc_error *error) { grpc_error *error) {
call_data *calld = arg; call_data *calld = (call_data *)arg;
if (calld->send_message_batch != NULL) { if (calld->send_message_batch != NULL) {
grpc_transport_stream_op_batch_finish_with_failure( grpc_transport_stream_op_batch_finish_with_failure(
exec_ctx, calld->send_message_batch, GRPC_ERROR_REF(error), exec_ctx, calld->send_message_batch, GRPC_ERROR_REF(error),
@ -374,7 +374,7 @@ static void start_send_message_batch(grpc_exec_ctx *exec_ctx, void *arg,
static void compress_start_transport_stream_op_batch( static void compress_start_transport_stream_op_batch(
grpc_exec_ctx *exec_ctx, grpc_call_element *elem, grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
grpc_transport_stream_op_batch *batch) { grpc_transport_stream_op_batch *batch) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
GPR_TIMER_BEGIN("compress_start_transport_stream_op_batch", 0); GPR_TIMER_BEGIN("compress_start_transport_stream_op_batch", 0);
// Handle cancel_stream. // Handle cancel_stream.
if (batch->cancel_stream) { if (batch->cancel_stream) {
@ -473,7 +473,7 @@ static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx,
static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem, static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
const grpc_call_final_info *final_info, const grpc_call_final_info *final_info,
grpc_closure *ignored) { grpc_closure *ignored) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
grpc_slice_buffer_destroy_internal(exec_ctx, &calld->slices); grpc_slice_buffer_destroy_internal(exec_ctx, &calld->slices);
GRPC_ERROR_UNREF(calld->cancel_error); GRPC_ERROR_UNREF(calld->cancel_error);
} }
@ -482,7 +482,7 @@ static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
static grpc_error *init_channel_elem(grpc_exec_ctx *exec_ctx, static grpc_error *init_channel_elem(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem, grpc_channel_element *elem,
grpc_channel_element_args *args) { grpc_channel_element_args *args) {
channel_data *channeld = elem->channel_data; channel_data *channeld = (channel_data *)elem->channel_data;
/* Configuration for message compression */ /* Configuration for message compression */
channeld->enabled_algorithms_bitset = channeld->enabled_algorithms_bitset =

@ -94,7 +94,7 @@ static void add_error(const char *error_name, grpc_error **cumulative,
static grpc_error *server_filter_incoming_metadata(grpc_exec_ctx *exec_ctx, static grpc_error *server_filter_incoming_metadata(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
grpc_metadata_batch *b) { grpc_metadata_batch *b) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
grpc_error *error = GRPC_ERROR_NONE; grpc_error *error = GRPC_ERROR_NONE;
static const char *error_name = "Failed processing incoming headers"; static const char *error_name = "Failed processing incoming headers";
@ -263,8 +263,8 @@ static grpc_error *server_filter_incoming_metadata(grpc_exec_ctx *exec_ctx,
static void hs_on_recv(grpc_exec_ctx *exec_ctx, void *user_data, static void hs_on_recv(grpc_exec_ctx *exec_ctx, void *user_data,
grpc_error *err) { grpc_error *err) {
grpc_call_element *elem = user_data; grpc_call_element *elem = (grpc_call_element *)user_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (err == GRPC_ERROR_NONE) { if (err == GRPC_ERROR_NONE) {
err = server_filter_incoming_metadata(exec_ctx, elem, err = server_filter_incoming_metadata(exec_ctx, elem,
calld->recv_initial_metadata); calld->recv_initial_metadata);
@ -276,8 +276,8 @@ static void hs_on_recv(grpc_exec_ctx *exec_ctx, void *user_data,
static void hs_on_complete(grpc_exec_ctx *exec_ctx, void *user_data, static void hs_on_complete(grpc_exec_ctx *exec_ctx, void *user_data,
grpc_error *err) { grpc_error *err) {
grpc_call_element *elem = user_data; grpc_call_element *elem = (grpc_call_element *)user_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
/* Call recv_message_ready if we got the payload via the path field */ /* Call recv_message_ready if we got the payload via the path field */
if (calld->seen_path_with_query && calld->recv_message_ready != NULL) { if (calld->seen_path_with_query && calld->recv_message_ready != NULL) {
*calld->pp_recv_message = calld->payload_bin_delivered *calld->pp_recv_message = calld->payload_bin_delivered
@ -296,8 +296,8 @@ static void hs_on_complete(grpc_exec_ctx *exec_ctx, void *user_data,
static void hs_recv_message_ready(grpc_exec_ctx *exec_ctx, void *user_data, static void hs_recv_message_ready(grpc_exec_ctx *exec_ctx, void *user_data,
grpc_error *err) { grpc_error *err) {
grpc_call_element *elem = user_data; grpc_call_element *elem = (grpc_call_element *)user_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (calld->seen_path_with_query) { if (calld->seen_path_with_query) {
// Do nothing. This is probably a GET request, and payload will be // Do nothing. This is probably a GET request, and payload will be
// returned in hs_on_complete callback. // returned in hs_on_complete callback.
@ -314,7 +314,7 @@ static grpc_error *hs_mutate_op(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
grpc_transport_stream_op_batch *op) { grpc_transport_stream_op_batch *op) {
/* grab pointers to our data from the call element */ /* grab pointers to our data from the call element */
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (op->send_initial_metadata) { if (op->send_initial_metadata) {
grpc_error *error = GRPC_ERROR_NONE; grpc_error *error = GRPC_ERROR_NONE;
@ -376,7 +376,7 @@ static grpc_error *hs_mutate_op(grpc_exec_ctx *exec_ctx,
static void hs_start_transport_stream_op_batch( static void hs_start_transport_stream_op_batch(
grpc_exec_ctx *exec_ctx, grpc_call_element *elem, grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
grpc_transport_stream_op_batch *op) { grpc_transport_stream_op_batch *op) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
GPR_TIMER_BEGIN("hs_start_transport_stream_op_batch", 0); GPR_TIMER_BEGIN("hs_start_transport_stream_op_batch", 0);
grpc_error *error = hs_mutate_op(exec_ctx, elem, op); grpc_error *error = hs_mutate_op(exec_ctx, elem, op);
if (error != GRPC_ERROR_NONE) { if (error != GRPC_ERROR_NONE) {
@ -393,7 +393,7 @@ static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
const grpc_call_element_args *args) { const grpc_call_element_args *args) {
/* grab pointers to our data from the call element */ /* grab pointers to our data from the call element */
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
/* initialize members */ /* initialize members */
calld->call_combiner = args->call_combiner; calld->call_combiner = args->call_combiner;
GRPC_CLOSURE_INIT(&calld->hs_on_recv, hs_on_recv, elem, GRPC_CLOSURE_INIT(&calld->hs_on_recv, hs_on_recv, elem,
@ -410,7 +410,7 @@ static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx,
static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem, static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
const grpc_call_final_info *final_info, const grpc_call_final_info *final_info,
grpc_closure *ignored) { grpc_closure *ignored) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
grpc_slice_buffer_destroy_internal(exec_ctx, &calld->read_slice_buffer); grpc_slice_buffer_destroy_internal(exec_ctx, &calld->read_slice_buffer);
} }

@ -42,7 +42,7 @@ static bool maybe_add_load_reporting_filter(grpc_exec_ctx *exec_ctx,
void *arg) { void *arg) {
const grpc_channel_args *args = const grpc_channel_args *args =
grpc_channel_stack_builder_get_channel_arguments(builder); grpc_channel_stack_builder_get_channel_arguments(builder);
const grpc_channel_filter *filter = arg; const grpc_channel_filter *filter = (const grpc_channel_filter *)arg;
grpc_channel_stack_builder_iterator *it = grpc_channel_stack_builder_iterator *it =
grpc_channel_stack_builder_iterator_find(builder, filter->name); grpc_channel_stack_builder_iterator_find(builder, filter->name);
const bool already_has_load_reporting_filter = const bool already_has_load_reporting_filter =

@ -56,8 +56,8 @@ typedef struct channel_data {
static void on_initial_md_ready(grpc_exec_ctx *exec_ctx, void *user_data, static void on_initial_md_ready(grpc_exec_ctx *exec_ctx, void *user_data,
grpc_error *err) { grpc_error *err) {
grpc_call_element *elem = user_data; grpc_call_element *elem = (grpc_call_element *)user_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (err == GRPC_ERROR_NONE) { if (err == GRPC_ERROR_NONE) {
if (calld->recv_initial_metadata->idx.named.path != NULL) { if (calld->recv_initial_metadata->idx.named.path != NULL) {
@ -88,7 +88,7 @@ static void on_initial_md_ready(grpc_exec_ctx *exec_ctx, void *user_data,
static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx, static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
const grpc_call_element_args *args) { const grpc_call_element_args *args) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
calld->id = (intptr_t)args->call_stack; calld->id = (intptr_t)args->call_stack;
GRPC_CLOSURE_INIT(&calld->on_initial_md_ready, on_initial_md_ready, elem, GRPC_CLOSURE_INIT(&calld->on_initial_md_ready, on_initial_md_ready, elem,
grpc_schedule_on_exec_ctx); grpc_schedule_on_exec_ctx);
@ -111,7 +111,7 @@ static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx,
static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem, static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
const grpc_call_final_info *final_info, const grpc_call_final_info *final_info,
grpc_closure *ignored) { grpc_closure *ignored) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
/* TODO(dgq): do something with the data /* TODO(dgq): do something with the data
channel_data *chand = elem->channel_data; channel_data *chand = elem->channel_data;
@ -141,7 +141,7 @@ static grpc_error *init_channel_elem(grpc_exec_ctx *exec_ctx,
grpc_channel_element_args *args) { grpc_channel_element_args *args) {
GPR_ASSERT(!args->is_last); GPR_ASSERT(!args->is_last);
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
chand->id = (intptr_t)args->channel_stack; chand->id = (intptr_t)args->channel_stack;
/* TODO(dgq): do something with the data /* TODO(dgq): do something with the data
@ -176,8 +176,8 @@ static void destroy_channel_elem(grpc_exec_ctx *exec_ctx,
static grpc_filtered_mdelem lr_trailing_md_filter(grpc_exec_ctx *exec_ctx, static grpc_filtered_mdelem lr_trailing_md_filter(grpc_exec_ctx *exec_ctx,
void *user_data, void *user_data,
grpc_mdelem md) { grpc_mdelem md) {
grpc_call_element *elem = user_data; grpc_call_element *elem = (grpc_call_element *)user_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (grpc_slice_eq(GRPC_MDKEY(md), GRPC_MDSTR_LB_COST_BIN)) { if (grpc_slice_eq(GRPC_MDKEY(md), GRPC_MDSTR_LB_COST_BIN)) {
calld->trailing_md_string = GRPC_MDVALUE(md); calld->trailing_md_string = GRPC_MDVALUE(md);
return GRPC_FILTERED_REMOVE(); return GRPC_FILTERED_REMOVE();
@ -189,7 +189,7 @@ static void lr_start_transport_stream_op_batch(
grpc_exec_ctx *exec_ctx, grpc_call_element *elem, grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
grpc_transport_stream_op_batch *op) { grpc_transport_stream_op_batch *op) {
GPR_TIMER_BEGIN("lr_start_transport_stream_op_batch", 0); GPR_TIMER_BEGIN("lr_start_transport_stream_op_batch", 0);
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (op->recv_initial_metadata) { if (op->recv_initial_metadata) {
/* substitute our callback for the higher callback */ /* substitute our callback for the higher callback */

@ -93,8 +93,8 @@ static void chttp2_connector_shutdown(grpc_exec_ctx *exec_ctx,
static void on_handshake_done(grpc_exec_ctx *exec_ctx, void *arg, static void on_handshake_done(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_handshaker_args *args = arg; grpc_handshaker_args *args = (grpc_handshaker_args *)arg;
chttp2_connector *c = args->user_data; chttp2_connector *c = (chttp2_connector *)args->user_data;
gpr_mu_lock(&c->mu); gpr_mu_lock(&c->mu);
if (error != GRPC_ERROR_NONE || c->shutdown) { if (error != GRPC_ERROR_NONE || c->shutdown) {
if (error == GRPC_ERROR_NONE) { if (error == GRPC_ERROR_NONE) {
@ -143,7 +143,7 @@ static void start_handshake_locked(grpc_exec_ctx *exec_ctx,
} }
static void connected(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) { static void connected(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
chttp2_connector *c = arg; chttp2_connector *c = (chttp2_connector *)arg;
gpr_mu_lock(&c->mu); gpr_mu_lock(&c->mu);
GPR_ASSERT(c->connecting); GPR_ASSERT(c->connecting);
c->connecting = false; c->connecting = false;
@ -198,7 +198,7 @@ static const grpc_connector_vtable chttp2_connector_vtable = {
chttp2_connector_connect}; chttp2_connector_connect};
grpc_connector *grpc_chttp2_connector_create() { grpc_connector *grpc_chttp2_connector_create() {
chttp2_connector *c = gpr_zalloc(sizeof(*c)); chttp2_connector *c = (chttp2_connector *)gpr_zalloc(sizeof(*c));
c->base.vtable = &chttp2_connector_vtable; c->base.vtable = &chttp2_connector_vtable;
gpr_mu_init(&c->mu); gpr_mu_init(&c->mu);
gpr_ref_init(&c->refs, 1); gpr_ref_init(&c->refs, 1);

@ -60,8 +60,9 @@ typedef struct {
static void on_handshake_done(grpc_exec_ctx *exec_ctx, void *arg, static void on_handshake_done(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_handshaker_args *args = arg; grpc_handshaker_args *args = (grpc_handshaker_args *)arg;
server_connection_state *connection_state = args->user_data; server_connection_state *connection_state =
(server_connection_state *)args->user_data;
gpr_mu_lock(&connection_state->server_state->mu); gpr_mu_lock(&connection_state->server_state->mu);
if (error != GRPC_ERROR_NONE || connection_state->server_state->shutdown) { if (error != GRPC_ERROR_NONE || connection_state->server_state->shutdown) {
const char *error_str = grpc_error_string(error); const char *error_str = grpc_error_string(error);
@ -108,7 +109,7 @@ static void on_handshake_done(grpc_exec_ctx *exec_ctx, void *arg,
static void on_accept(grpc_exec_ctx *exec_ctx, void *arg, grpc_endpoint *tcp, static void on_accept(grpc_exec_ctx *exec_ctx, void *arg, grpc_endpoint *tcp,
grpc_pollset *accepting_pollset, grpc_pollset *accepting_pollset,
grpc_tcp_server_acceptor *acceptor) { grpc_tcp_server_acceptor *acceptor) {
server_state *state = arg; server_state *state = (server_state *)arg;
gpr_mu_lock(&state->mu); gpr_mu_lock(&state->mu);
if (state->shutdown) { if (state->shutdown) {
gpr_mu_unlock(&state->mu); gpr_mu_unlock(&state->mu);
@ -143,7 +144,7 @@ static void on_accept(grpc_exec_ctx *exec_ctx, void *arg, grpc_endpoint *tcp,
static void server_start_listener(grpc_exec_ctx *exec_ctx, grpc_server *server, static void server_start_listener(grpc_exec_ctx *exec_ctx, grpc_server *server,
void *arg, grpc_pollset **pollsets, void *arg, grpc_pollset **pollsets,
size_t pollset_count) { size_t pollset_count) {
server_state *state = arg; server_state *state = (server_state *)arg;
gpr_mu_lock(&state->mu); gpr_mu_lock(&state->mu);
state->shutdown = false; state->shutdown = false;
gpr_mu_unlock(&state->mu); gpr_mu_unlock(&state->mu);
@ -153,7 +154,7 @@ static void server_start_listener(grpc_exec_ctx *exec_ctx, grpc_server *server,
static void tcp_server_shutdown_complete(grpc_exec_ctx *exec_ctx, void *arg, static void tcp_server_shutdown_complete(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
server_state *state = arg; server_state *state = (server_state *)arg;
/* ensure all threads have unlocked */ /* ensure all threads have unlocked */
gpr_mu_lock(&state->mu); gpr_mu_lock(&state->mu);
grpc_closure *destroy_done = state->server_destroy_listener_done; grpc_closure *destroy_done = state->server_destroy_listener_done;
@ -178,7 +179,7 @@ static void tcp_server_shutdown_complete(grpc_exec_ctx *exec_ctx, void *arg,
static void server_destroy_listener(grpc_exec_ctx *exec_ctx, static void server_destroy_listener(grpc_exec_ctx *exec_ctx,
grpc_server *server, void *arg, grpc_server *server, void *arg,
grpc_closure *destroy_done) { grpc_closure *destroy_done) {
server_state *state = arg; server_state *state = (server_state *)arg;
gpr_mu_lock(&state->mu); gpr_mu_lock(&state->mu);
state->shutdown = true; state->shutdown = true;
state->server_destroy_listener_done = destroy_done; state->server_destroy_listener_done = destroy_done;
@ -208,7 +209,7 @@ grpc_error *grpc_chttp2_server_add_port(grpc_exec_ctx *exec_ctx,
if (err != GRPC_ERROR_NONE) { if (err != GRPC_ERROR_NONE) {
goto error; goto error;
} }
state = gpr_zalloc(sizeof(*state)); state = (server_state *)gpr_zalloc(sizeof(*state));
GRPC_CLOSURE_INIT(&state->tcp_server_shutdown_complete, GRPC_CLOSURE_INIT(&state->tcp_server_shutdown_complete,
tcp_server_shutdown_complete, state, tcp_server_shutdown_complete, state,
grpc_schedule_on_exec_ctx); grpc_schedule_on_exec_ctx);
@ -225,7 +226,7 @@ grpc_error *grpc_chttp2_server_add_port(grpc_exec_ctx *exec_ctx,
gpr_mu_init(&state->mu); gpr_mu_init(&state->mu);
const size_t naddrs = resolved->naddrs; const size_t naddrs = resolved->naddrs;
errors = gpr_malloc(sizeof(*errors) * naddrs); errors = (grpc_error **)gpr_malloc(sizeof(*errors) * naddrs);
for (i = 0; i < naddrs; i++) { for (i = 0; i < naddrs; i++) {
errors[i] = errors[i] =
grpc_tcp_server_add_port(tcp_server, &resolved->addrs[i], &port_temp); grpc_tcp_server_add_port(tcp_server, &resolved->addrs[i], &port_temp);

@ -46,7 +46,7 @@ grpc_error *grpc_chttp2_goaway_parser_begin_frame(grpc_chttp2_goaway_parser *p,
gpr_free(p->debug_data); gpr_free(p->debug_data);
p->debug_length = length - 8; p->debug_length = length - 8;
p->debug_data = gpr_malloc(p->debug_length); p->debug_data = (char *)gpr_malloc(p->debug_length);
p->debug_pos = 0; p->debug_pos = 0;
p->state = GRPC_CHTTP2_GOAWAY_LSI0; p->state = GRPC_CHTTP2_GOAWAY_LSI0;
return GRPC_ERROR_NONE; return GRPC_ERROR_NONE;
@ -60,7 +60,7 @@ grpc_error *grpc_chttp2_goaway_parser_parse(grpc_exec_ctx *exec_ctx,
uint8_t *const beg = GRPC_SLICE_START_PTR(slice); uint8_t *const beg = GRPC_SLICE_START_PTR(slice);
uint8_t *const end = GRPC_SLICE_END_PTR(slice); uint8_t *const end = GRPC_SLICE_END_PTR(slice);
uint8_t *cur = beg; uint8_t *cur = beg;
grpc_chttp2_goaway_parser *p = parser; grpc_chttp2_goaway_parser *p = (grpc_chttp2_goaway_parser *)parser;
switch (p->state) { switch (p->state) {
case GRPC_CHTTP2_GOAWAY_LSI0: case GRPC_CHTTP2_GOAWAY_LSI0:

@ -75,7 +75,7 @@ grpc_error *grpc_chttp2_ping_parser_parse(grpc_exec_ctx *exec_ctx, void *parser,
uint8_t *const beg = GRPC_SLICE_START_PTR(slice); uint8_t *const beg = GRPC_SLICE_START_PTR(slice);
uint8_t *const end = GRPC_SLICE_END_PTR(slice); uint8_t *const end = GRPC_SLICE_END_PTR(slice);
uint8_t *cur = beg; uint8_t *cur = beg;
grpc_chttp2_ping_parser *p = parser; grpc_chttp2_ping_parser *p = (grpc_chttp2_ping_parser *)parser;
while (p->byte != 8 && cur != end) { while (p->byte != 8 && cur != end) {
p->opaque_8bytes |= (((uint64_t)*cur) << (56 - 8 * p->byte)); p->opaque_8bytes |= (((uint64_t)*cur) << (56 - 8 * p->byte));
@ -113,7 +113,7 @@ grpc_error *grpc_chttp2_ping_parser_parse(grpc_exec_ctx *exec_ctx, void *parser,
if (!g_disable_ping_ack) { if (!g_disable_ping_ack) {
if (t->ping_ack_count == t->ping_ack_capacity) { if (t->ping_ack_count == t->ping_ack_capacity) {
t->ping_ack_capacity = GPR_MAX(t->ping_ack_capacity * 3 / 2, 3); t->ping_ack_capacity = GPR_MAX(t->ping_ack_capacity * 3 / 2, 3);
t->ping_acks = gpr_realloc( t->ping_acks = (uint64_t *)gpr_realloc(
t->ping_acks, t->ping_ack_capacity * sizeof(*t->ping_acks)); t->ping_acks, t->ping_ack_capacity * sizeof(*t->ping_acks));
} }
t->ping_acks[t->ping_ack_count++] = p->opaque_8bytes; t->ping_acks[t->ping_ack_count++] = p->opaque_8bytes;

@ -77,7 +77,7 @@ grpc_error *grpc_chttp2_rst_stream_parser_parse(grpc_exec_ctx *exec_ctx,
uint8_t *const beg = GRPC_SLICE_START_PTR(slice); uint8_t *const beg = GRPC_SLICE_START_PTR(slice);
uint8_t *const end = GRPC_SLICE_END_PTR(slice); uint8_t *const end = GRPC_SLICE_END_PTR(slice);
uint8_t *cur = beg; uint8_t *cur = beg;
grpc_chttp2_rst_stream_parser *p = parser; grpc_chttp2_rst_stream_parser *p = (grpc_chttp2_rst_stream_parser *)parser;
while (p->byte != 4 && cur != end) { while (p->byte != 4 && cur != end) {
p->reason_bytes[p->byte] = *cur; p->reason_bytes[p->byte] = *cur;

@ -111,7 +111,7 @@ grpc_error *grpc_chttp2_settings_parser_parse(grpc_exec_ctx *exec_ctx, void *p,
grpc_chttp2_transport *t, grpc_chttp2_transport *t,
grpc_chttp2_stream *s, grpc_chttp2_stream *s,
grpc_slice slice, int is_last) { grpc_slice slice, int is_last) {
grpc_chttp2_settings_parser *parser = p; grpc_chttp2_settings_parser *parser = (grpc_chttp2_settings_parser *)p;
const uint8_t *cur = GRPC_SLICE_START_PTR(slice); const uint8_t *cur = GRPC_SLICE_START_PTR(slice);
const uint8_t *end = GRPC_SLICE_END_PTR(slice); const uint8_t *end = GRPC_SLICE_END_PTR(slice);
char *msg; char *msg;

@ -70,7 +70,8 @@ grpc_error *grpc_chttp2_window_update_parser_parse(
uint8_t *const beg = GRPC_SLICE_START_PTR(slice); uint8_t *const beg = GRPC_SLICE_START_PTR(slice);
uint8_t *const end = GRPC_SLICE_END_PTR(slice); uint8_t *const end = GRPC_SLICE_END_PTR(slice);
uint8_t *cur = beg; uint8_t *cur = beg;
grpc_chttp2_window_update_parser *p = parser; grpc_chttp2_window_update_parser *p =
(grpc_chttp2_window_update_parser *)parser;
while (p->byte != 4 && cur != end) { while (p->byte != 4 && cur != end) {
p->amount |= ((uint32_t)*cur) << (8 * (3 - p->byte)); p->amount |= ((uint32_t)*cur) << (8 * (3 - p->byte));

@ -536,7 +536,7 @@ void grpc_chttp2_hpack_compressor_init(grpc_chttp2_hpack_compressor *c) {
c->max_table_elems = c->cap_table_elems; c->max_table_elems = c->cap_table_elems;
c->max_usable_size = GRPC_CHTTP2_HPACKC_INITIAL_TABLE_SIZE; c->max_usable_size = GRPC_CHTTP2_HPACKC_INITIAL_TABLE_SIZE;
c->table_elem_size = c->table_elem_size =
gpr_malloc(sizeof(*c->table_elem_size) * c->cap_table_elems); (uint16_t *)gpr_malloc(sizeof(*c->table_elem_size) * c->cap_table_elems);
memset(c->table_elem_size, 0, memset(c->table_elem_size, 0,
sizeof(*c->table_elem_size) * c->cap_table_elems); sizeof(*c->table_elem_size) * c->cap_table_elems);
for (size_t i = 0; i < GPR_ARRAY_SIZE(c->entries_keys); i++) { for (size_t i = 0; i < GPR_ARRAY_SIZE(c->entries_keys); i++) {
@ -564,7 +564,8 @@ void grpc_chttp2_hpack_compressor_set_max_usable_size(
} }
static void rebuild_elems(grpc_chttp2_hpack_compressor *c, uint32_t new_cap) { static void rebuild_elems(grpc_chttp2_hpack_compressor *c, uint32_t new_cap) {
uint16_t *table_elem_size = gpr_malloc(sizeof(*table_elem_size) * new_cap); uint16_t *table_elem_size =
(uint16_t *)gpr_malloc(sizeof(*table_elem_size) * new_cap);
uint32_t i; uint32_t i;
memset(table_elem_size, 0, sizeof(*table_elem_size) * new_cap); memset(table_elem_size, 0, sizeof(*table_elem_size) * new_cap);

@ -1284,7 +1284,7 @@ static void append_bytes(grpc_chttp2_hpack_parser_string *str,
GPR_ASSERT(str->data.copied.length + length <= UINT32_MAX); GPR_ASSERT(str->data.copied.length + length <= UINT32_MAX);
str->data.copied.capacity = (uint32_t)(str->data.copied.length + length); str->data.copied.capacity = (uint32_t)(str->data.copied.length + length);
str->data.copied.str = str->data.copied.str =
gpr_realloc(str->data.copied.str, str->data.copied.capacity); (char *)gpr_realloc(str->data.copied.str, str->data.copied.capacity);
} }
memcpy(str->data.copied.str + str->data.copied.length, data, length); memcpy(str->data.copied.str + str->data.copied.length, data, length);
GPR_ASSERT(length <= UINT32_MAX - str->data.copied.length); GPR_ASSERT(length <= UINT32_MAX - str->data.copied.length);
@ -1643,7 +1643,7 @@ static const maybe_complete_func_type maybe_complete_funcs[] = {
static void force_client_rst_stream(grpc_exec_ctx *exec_ctx, void *sp, static void force_client_rst_stream(grpc_exec_ctx *exec_ctx, void *sp,
grpc_error *error) { grpc_error *error) {
grpc_chttp2_stream *s = sp; grpc_chttp2_stream *s = (grpc_chttp2_stream *)sp;
grpc_chttp2_transport *t = s->t; grpc_chttp2_transport *t = s->t;
if (!s->write_closed) { if (!s->write_closed) {
grpc_slice_buffer_add( grpc_slice_buffer_add(
@ -1665,7 +1665,8 @@ static void parse_stream_compression_md(grpc_exec_ctx *exec_ctx,
if (!grpc_slice_eq(content_encoding, GRPC_MDSTR_IDENTITY)) { if (!grpc_slice_eq(content_encoding, GRPC_MDSTR_IDENTITY)) {
if (grpc_slice_eq(content_encoding, GRPC_MDSTR_GZIP)) { if (grpc_slice_eq(content_encoding, GRPC_MDSTR_GZIP)) {
s->stream_compression_recv_enabled = true; s->stream_compression_recv_enabled = true;
s->decompressed_data_buffer = gpr_malloc(sizeof(grpc_slice_buffer)); s->decompressed_data_buffer =
(grpc_slice_buffer *)gpr_malloc(sizeof(grpc_slice_buffer));
grpc_slice_buffer_init(s->decompressed_data_buffer); grpc_slice_buffer_init(s->decompressed_data_buffer);
} }
} }
@ -1677,7 +1678,7 @@ grpc_error *grpc_chttp2_header_parser_parse(grpc_exec_ctx *exec_ctx,
grpc_chttp2_transport *t, grpc_chttp2_transport *t,
grpc_chttp2_stream *s, grpc_chttp2_stream *s,
grpc_slice slice, int is_last) { grpc_slice slice, int is_last) {
grpc_chttp2_hpack_parser *parser = hpack_parser; grpc_chttp2_hpack_parser *parser = (grpc_chttp2_hpack_parser *)hpack_parser;
GPR_TIMER_BEGIN("grpc_chttp2_hpack_parser_parse", 0); GPR_TIMER_BEGIN("grpc_chttp2_hpack_parser_parse", 0);
if (s != NULL) { if (s != NULL) {
s->stats.incoming.header_bytes += GRPC_SLICE_LENGTH(slice); s->stats.incoming.header_bytes += GRPC_SLICE_LENGTH(slice);

@ -173,7 +173,7 @@ void grpc_chttp2_hptbl_init(grpc_exec_ctx *exec_ctx, grpc_chttp2_hptbl *tbl) {
GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE; GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE;
tbl->max_entries = tbl->cap_entries = tbl->max_entries = tbl->cap_entries =
entries_for_bytes(tbl->current_table_bytes); entries_for_bytes(tbl->current_table_bytes);
tbl->ents = gpr_malloc(sizeof(*tbl->ents) * tbl->cap_entries); tbl->ents = (grpc_mdelem *)gpr_malloc(sizeof(*tbl->ents) * tbl->cap_entries);
memset(tbl->ents, 0, sizeof(*tbl->ents) * tbl->cap_entries); memset(tbl->ents, 0, sizeof(*tbl->ents) * tbl->cap_entries);
for (i = 1; i <= GRPC_CHTTP2_LAST_STATIC_ENTRY; i++) { for (i = 1; i <= GRPC_CHTTP2_LAST_STATIC_ENTRY; i++) {
tbl->static_ents[i - 1] = grpc_mdelem_from_slices( tbl->static_ents[i - 1] = grpc_mdelem_from_slices(
@ -228,7 +228,7 @@ static void evict1(grpc_exec_ctx *exec_ctx, grpc_chttp2_hptbl *tbl) {
} }
static void rebuild_ents(grpc_chttp2_hptbl *tbl, uint32_t new_cap) { static void rebuild_ents(grpc_chttp2_hptbl *tbl, uint32_t new_cap) {
grpc_mdelem *ents = gpr_malloc(sizeof(*ents) * new_cap); grpc_mdelem *ents = (grpc_mdelem *)gpr_malloc(sizeof(*ents) * new_cap);
uint32_t i; uint32_t i;
for (i = 0; i < tbl->num_ents; i++) { for (i = 0; i < tbl->num_ents; i++) {

@ -402,7 +402,7 @@ static void free_timeout(void *p) { gpr_free(p); }
static void on_initial_header(grpc_exec_ctx *exec_ctx, void *tp, static void on_initial_header(grpc_exec_ctx *exec_ctx, void *tp,
grpc_mdelem md) { grpc_mdelem md) {
grpc_chttp2_transport *t = tp; grpc_chttp2_transport *t = (grpc_chttp2_transport *)tp;
grpc_chttp2_stream *s = t->incoming_stream; grpc_chttp2_stream *s = t->incoming_stream;
GPR_TIMER_BEGIN("on_initial_header", 0); GPR_TIMER_BEGIN("on_initial_header", 0);
@ -426,11 +426,12 @@ static void on_initial_header(grpc_exec_ctx *exec_ctx, void *tp,
} }
if (grpc_slice_eq(GRPC_MDKEY(md), GRPC_MDSTR_GRPC_TIMEOUT)) { if (grpc_slice_eq(GRPC_MDKEY(md), GRPC_MDSTR_GRPC_TIMEOUT)) {
gpr_timespec *cached_timeout = grpc_mdelem_get_user_data(md, free_timeout); gpr_timespec *cached_timeout =
(gpr_timespec *)grpc_mdelem_get_user_data(md, free_timeout);
gpr_timespec timeout; gpr_timespec timeout;
if (cached_timeout == NULL) { if (cached_timeout == NULL) {
/* not already parsed: parse it now, and store the result away */ /* not already parsed: parse it now, and store the result away */
cached_timeout = gpr_malloc(sizeof(gpr_timespec)); cached_timeout = (gpr_timespec *)gpr_malloc(sizeof(gpr_timespec));
if (!grpc_http2_decode_timeout(GRPC_MDVALUE(md), cached_timeout)) { if (!grpc_http2_decode_timeout(GRPC_MDVALUE(md), cached_timeout)) {
char *val = grpc_slice_to_c_string(GRPC_MDVALUE(md)); char *val = grpc_slice_to_c_string(GRPC_MDVALUE(md));
gpr_log(GPR_ERROR, "Ignoring bad timeout value '%s'", val); gpr_log(GPR_ERROR, "Ignoring bad timeout value '%s'", val);
@ -482,7 +483,7 @@ static void on_initial_header(grpc_exec_ctx *exec_ctx, void *tp,
static void on_trailing_header(grpc_exec_ctx *exec_ctx, void *tp, static void on_trailing_header(grpc_exec_ctx *exec_ctx, void *tp,
grpc_mdelem md) { grpc_mdelem md) {
grpc_chttp2_transport *t = tp; grpc_chttp2_transport *t = (grpc_chttp2_transport *)tp;
grpc_chttp2_stream *s = t->incoming_stream; grpc_chttp2_stream *s = t->incoming_stream;
GPR_TIMER_BEGIN("on_trailing_header", 0); GPR_TIMER_BEGIN("on_trailing_header", 0);

@ -27,8 +27,8 @@
void grpc_chttp2_stream_map_init(grpc_chttp2_stream_map *map, void grpc_chttp2_stream_map_init(grpc_chttp2_stream_map *map,
size_t initial_capacity) { size_t initial_capacity) {
GPR_ASSERT(initial_capacity > 1); GPR_ASSERT(initial_capacity > 1);
map->keys = gpr_malloc(sizeof(uint32_t) * initial_capacity); map->keys = (uint32_t *)gpr_malloc(sizeof(uint32_t) * initial_capacity);
map->values = gpr_malloc(sizeof(void *) * initial_capacity); map->values = (void **)gpr_malloc(sizeof(void *) * initial_capacity);
map->count = 0; map->count = 0;
map->free = 0; map->free = 0;
map->capacity = initial_capacity; map->capacity = initial_capacity;

@ -120,7 +120,7 @@ static void slice_buffer_list_append_entry(slice_buffer_list *l,
} }
static grpc_slice_buffer *slice_buffer_list_append(slice_buffer_list *l) { static grpc_slice_buffer *slice_buffer_list_append(slice_buffer_list *l) {
sb_list_entry *next = gpr_malloc(sizeof(*next)); sb_list_entry *next = (sb_list_entry *)gpr_malloc(sizeof(*next));
grpc_slice_buffer_init(&next->sb); grpc_slice_buffer_init(&next->sb);
slice_buffer_list_append_entry(l, next); slice_buffer_list_append_entry(l, next);
return &next->sb; return &next->sb;
@ -327,7 +327,8 @@ static grpc_error *fill_in_metadata(grpc_exec_ctx *exec_ctx, inproc_stream *s,
grpc_error *error = GRPC_ERROR_NONE; grpc_error *error = GRPC_ERROR_NONE;
for (grpc_linked_mdelem *elem = metadata->list.head; for (grpc_linked_mdelem *elem = metadata->list.head;
(elem != NULL) && (error == GRPC_ERROR_NONE); elem = elem->next) { (elem != NULL) && (error == GRPC_ERROR_NONE); elem = elem->next) {
grpc_linked_mdelem *nelem = gpr_arena_alloc(s->arena, sizeof(*nelem)); grpc_linked_mdelem *nelem =
(grpc_linked_mdelem *)gpr_arena_alloc(s->arena, sizeof(*nelem));
nelem->md = grpc_mdelem_from_slices( nelem->md = grpc_mdelem_from_slices(
exec_ctx, grpc_slice_intern(GRPC_MDKEY(elem->md)), exec_ctx, grpc_slice_intern(GRPC_MDKEY(elem->md)),
grpc_slice_intern(GRPC_MDVALUE(elem->md))); grpc_slice_intern(GRPC_MDVALUE(elem->md)));
@ -531,12 +532,14 @@ static void fail_helper_locked(grpc_exec_ctx *exec_ctx, inproc_stream *s,
// since it expects that as well as no error yet // since it expects that as well as no error yet
grpc_metadata_batch fake_md; grpc_metadata_batch fake_md;
grpc_metadata_batch_init(&fake_md); grpc_metadata_batch_init(&fake_md);
grpc_linked_mdelem *path_md = gpr_arena_alloc(s->arena, sizeof(*path_md)); grpc_linked_mdelem *path_md =
(grpc_linked_mdelem *)gpr_arena_alloc(s->arena, sizeof(*path_md));
path_md->md = path_md->md =
grpc_mdelem_from_slices(exec_ctx, g_fake_path_key, g_fake_path_value); grpc_mdelem_from_slices(exec_ctx, g_fake_path_key, g_fake_path_value);
GPR_ASSERT(grpc_metadata_batch_link_tail(exec_ctx, &fake_md, path_md) == GPR_ASSERT(grpc_metadata_batch_link_tail(exec_ctx, &fake_md, path_md) ==
GRPC_ERROR_NONE); GRPC_ERROR_NONE);
grpc_linked_mdelem *auth_md = gpr_arena_alloc(s->arena, sizeof(*auth_md)); grpc_linked_mdelem *auth_md =
(grpc_linked_mdelem *)gpr_arena_alloc(s->arena, sizeof(*auth_md));
auth_md->md = auth_md->md =
grpc_mdelem_from_slices(exec_ctx, g_fake_auth_key, g_fake_auth_value); grpc_mdelem_from_slices(exec_ctx, g_fake_auth_key, g_fake_auth_value);
GPR_ASSERT(grpc_metadata_batch_link_tail(exec_ctx, &fake_md, auth_md) == GPR_ASSERT(grpc_metadata_batch_link_tail(exec_ctx, &fake_md, auth_md) ==
@ -1172,8 +1175,8 @@ static void inproc_transports_create(grpc_exec_ctx *exec_ctx,
grpc_transport **client_transport, grpc_transport **client_transport,
const grpc_channel_args *client_args) { const grpc_channel_args *client_args) {
INPROC_LOG(GPR_DEBUG, "inproc_transports_create"); INPROC_LOG(GPR_DEBUG, "inproc_transports_create");
inproc_transport *st = gpr_zalloc(sizeof(*st)); inproc_transport *st = (inproc_transport *)gpr_zalloc(sizeof(*st));
inproc_transport *ct = gpr_zalloc(sizeof(*ct)); inproc_transport *ct = (inproc_transport *)gpr_zalloc(sizeof(*ct));
// Share one lock between both sides since both sides get affected // Share one lock between both sides since both sides get affected
st->mu = ct->mu = gpr_malloc(sizeof(*st->mu)); st->mu = ct->mu = gpr_malloc(sizeof(*st->mu));
gpr_mu_init(&st->mu->mu); gpr_mu_init(&st->mu->mu);

@ -212,7 +212,7 @@ bool grpc_channel_stack_builder_prepend_filter(
static void add_after(filter_node *before, const grpc_channel_filter *filter, static void add_after(filter_node *before, const grpc_channel_filter *filter,
grpc_post_filter_create_init_func post_init_func, grpc_post_filter_create_init_func post_init_func,
void *user_data) { void *user_data) {
filter_node *new = gpr_malloc(sizeof(*new)); filter_node *new = (filter_node *)gpr_malloc(sizeof(*new));
new->next = before->next; new->next = before->next;
new->prev = before; new->prev = before;
new->next->prev = new->prev->next = new; new->next->prev = new->prev->next = new;

@ -39,7 +39,7 @@ static tracer *tracers;
#endif #endif
void grpc_register_tracer(grpc_tracer_flag *flag) { void grpc_register_tracer(grpc_tracer_flag *flag) {
tracer *t = gpr_malloc(sizeof(*t)); tracer *t = (tracer *)gpr_malloc(sizeof(*t));
t->flag = flag; t->flag = flag;
t->next = tracers; t->next = tracers;
TRACER_SET(*flag, false); TRACER_SET(*flag, false);
@ -53,10 +53,10 @@ static void add(const char *beg, const char *end, char ***ss, size_t *ns) {
size_t len; size_t len;
GPR_ASSERT(end >= beg); GPR_ASSERT(end >= beg);
len = (size_t)(end - beg); len = (size_t)(end - beg);
s = gpr_malloc(len + 1); s = (char *)gpr_malloc(len + 1);
memcpy(s, beg, len); memcpy(s, beg, len);
s[len] = 0; s[len] = 0;
*ss = gpr_realloc(*ss, sizeof(char **) * np); *ss = (char **)gpr_realloc(*ss, sizeof(char **) * np);
(*ss)[n] = s; (*ss)[n] = s;
*ns = np; *ns = np;
} }

@ -74,7 +74,7 @@ static const grpc_closure_scheduler_vtable finally_scheduler = {
static void offload(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error); static void offload(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error);
grpc_combiner *grpc_combiner_create(void) { grpc_combiner *grpc_combiner_create(void) {
grpc_combiner *lock = gpr_zalloc(sizeof(*lock)); grpc_combiner *lock = (grpc_combiner *)gpr_zalloc(sizeof(*lock));
gpr_ref_init(&lock->refs, 1); gpr_ref_init(&lock->refs, 1);
lock->scheduler.vtable = &scheduler; lock->scheduler.vtable = &scheduler;
lock->finally_scheduler.vtable = &finally_scheduler; lock->finally_scheduler.vtable = &finally_scheduler;
@ -193,7 +193,7 @@ static void move_next(grpc_exec_ctx *exec_ctx) {
} }
static void offload(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) { static void offload(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
grpc_combiner *lock = arg; grpc_combiner *lock = (grpc_combiner *)arg;
push_last_on_exec_ctx(exec_ctx, lock); push_last_on_exec_ctx(exec_ctx, lock);
} }

@ -279,7 +279,7 @@ static void ref_by(grpc_fd *fd, int n) {
} }
static void fd_destroy(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) { static void fd_destroy(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
grpc_fd *fd = arg; grpc_fd *fd = (grpc_fd *)arg;
/* Add the fd to the freelist */ /* Add the fd to the freelist */
grpc_iomgr_unregister_object(&fd->iomgr_object); grpc_iomgr_unregister_object(&fd->iomgr_object);
pollable_destroy(&fd->pollable); pollable_destroy(&fd->pollable);
@ -340,7 +340,7 @@ static grpc_fd *fd_create(int fd, const char *name) {
gpr_mu_unlock(&fd_freelist_mu); gpr_mu_unlock(&fd_freelist_mu);
if (new_fd == NULL) { if (new_fd == NULL) {
new_fd = gpr_malloc(sizeof(grpc_fd)); new_fd = (grpc_fd *)gpr_malloc(sizeof(grpc_fd));
} }
pollable_init(&new_fd->pollable, PO_FD); pollable_init(&new_fd->pollable, PO_FD);
@ -556,7 +556,7 @@ static void pollset_maybe_finish_shutdown(grpc_exec_ctx *exec_ctx,
static void do_kick_all(grpc_exec_ctx *exec_ctx, void *arg, static void do_kick_all(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error_unused) { grpc_error *error_unused) {
grpc_error *error = GRPC_ERROR_NONE; grpc_error *error = GRPC_ERROR_NONE;
grpc_pollset *pollset = arg; grpc_pollset *pollset = (grpc_pollset *)arg;
gpr_mu_lock(&pollset->pollable.po.mu); gpr_mu_lock(&pollset->pollable.po.mu);
if (pollset->root_worker != NULL) { if (pollset->root_worker != NULL) {
grpc_pollset_worker *worker = pollset->root_worker; grpc_pollset_worker *worker = pollset->root_worker;
@ -1012,7 +1012,7 @@ static grpc_error *pollset_work(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
static void unref_fd_no_longer_poller(grpc_exec_ctx *exec_ctx, void *arg, static void unref_fd_no_longer_poller(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_fd *fd = arg; grpc_fd *fd = (grpc_fd *)arg;
UNREF_BY(exec_ctx, fd, 2, "pollset_pollable"); UNREF_BY(exec_ctx, fd, 2, "pollset_pollable");
} }
@ -1081,7 +1081,7 @@ static void pollset_add_fd(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
*/ */
static grpc_pollset_set *pollset_set_create(void) { static grpc_pollset_set *pollset_set_create(void) {
grpc_pollset_set *pss = gpr_zalloc(sizeof(*pss)); grpc_pollset_set *pss = (grpc_pollset_set *)gpr_zalloc(sizeof(*pss));
po_init(&pss->po, PO_POLLSET_SET); po_init(&pss->po, PO_POLLSET_SET);
return pss; return pss;
} }
@ -1243,7 +1243,7 @@ static void pg_broadcast(grpc_exec_ctx *exec_ctx, polling_group *from,
static void pg_create(grpc_exec_ctx *exec_ctx, polling_obj **initial_po, static void pg_create(grpc_exec_ctx *exec_ctx, polling_obj **initial_po,
size_t initial_po_count) { size_t initial_po_count) {
/* assumes all polling objects in initial_po are locked */ /* assumes all polling objects in initial_po are locked */
polling_group *pg = gpr_malloc(sizeof(*pg)); polling_group *pg = (polling_group *)gpr_malloc(sizeof(*pg));
po_init(&pg->po, PO_POLLING_GROUP); po_init(&pg->po, PO_POLLING_GROUP);
gpr_ref_init(&pg->refs, (int)initial_po_count); gpr_ref_init(&pg->refs, (int)initial_po_count);
for (size_t i = 0; i < initial_po_count; i++) { for (size_t i = 0; i < initial_po_count; i++) {
@ -1353,7 +1353,7 @@ static void pg_merge(grpc_exec_ctx *exec_ctx, polling_group *a,
gpr_mu_lock(&po->mu); gpr_mu_lock(&po->mu);
if (unref_count == unref_cap) { if (unref_count == unref_cap) {
unref_cap = GPR_MAX(8, 3 * unref_cap / 2); unref_cap = GPR_MAX(8, 3 * unref_cap / 2);
unref = gpr_realloc(unref, unref_cap * sizeof(*unref)); unref = (polling_group **)gpr_realloc(unref, unref_cap * sizeof(*unref));
} }
unref[unref_count++] = po->group; unref[unref_count++] = po->group;
po->group = pg_ref(a); po->group = pg_ref(a);

@ -363,7 +363,8 @@ static void polling_island_add_fds_locked(polling_island *pi, grpc_fd **fds,
if (pi->fd_cnt == pi->fd_capacity) { if (pi->fd_cnt == pi->fd_capacity) {
pi->fd_capacity = GPR_MAX(pi->fd_capacity + 8, pi->fd_cnt * 3 / 2); pi->fd_capacity = GPR_MAX(pi->fd_capacity + 8, pi->fd_cnt * 3 / 2);
pi->fds = gpr_realloc(pi->fds, sizeof(grpc_fd *) * pi->fd_capacity); pi->fds =
(grpc_fd **)gpr_realloc(pi->fds, sizeof(grpc_fd *) * pi->fd_capacity);
} }
pi->fds[pi->fd_cnt++] = fds[i]; pi->fds[pi->fd_cnt++] = fds[i];
@ -466,7 +467,7 @@ static polling_island *polling_island_create(grpc_exec_ctx *exec_ctx,
*error = GRPC_ERROR_NONE; *error = GRPC_ERROR_NONE;
pi = gpr_malloc(sizeof(*pi)); pi = (polling_island *)gpr_malloc(sizeof(*pi));
gpr_mu_init(&pi->mu); gpr_mu_init(&pi->mu);
pi->fd_cnt = 0; pi->fd_cnt = 0;
pi->fd_capacity = 0; pi->fd_capacity = 0;
@ -810,7 +811,7 @@ static grpc_fd *fd_create(int fd, const char *name) {
gpr_mu_unlock(&fd_freelist_mu); gpr_mu_unlock(&fd_freelist_mu);
if (new_fd == NULL) { if (new_fd == NULL) {
new_fd = gpr_malloc(sizeof(grpc_fd)); new_fd = (grpc_fd *)gpr_malloc(sizeof(grpc_fd));
gpr_mu_init(&new_fd->po.mu); gpr_mu_init(&new_fd->po.mu);
} }
@ -1273,7 +1274,7 @@ static void pollset_work_and_unlock(grpc_exec_ctx *exec_ctx,
to the function pollset_work_and_unlock() will pick up the correct to the function pollset_work_and_unlock() will pick up the correct
epoll_fd */ epoll_fd */
} else { } else {
grpc_fd *fd = data_ptr; grpc_fd *fd = (grpc_fd *)data_ptr;
int cancel = ep_ev[i].events & (EPOLLERR | EPOLLHUP); int cancel = ep_ev[i].events & (EPOLLERR | EPOLLHUP);
int read_ev = ep_ev[i].events & (EPOLLIN | EPOLLPRI); int read_ev = ep_ev[i].events & (EPOLLIN | EPOLLPRI);
int write_ev = ep_ev[i].events & EPOLLOUT; int write_ev = ep_ev[i].events & EPOLLOUT;
@ -1569,7 +1570,7 @@ static void pollset_add_fd(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
*/ */
static grpc_pollset_set *pollset_set_create(void) { static grpc_pollset_set *pollset_set_create(void) {
grpc_pollset_set *pss = gpr_malloc(sizeof(*pss)); grpc_pollset_set *pss = (grpc_pollset_set *)gpr_malloc(sizeof(*pss));
gpr_mu_init(&pss->po.mu); gpr_mu_init(&pss->po.mu);
pss->po.pi = NULL; pss->po.pi = NULL;
#ifndef NDEBUG #ifndef NDEBUG
@ -1647,8 +1648,8 @@ void *grpc_pollset_get_polling_island(grpc_pollset *ps) {
} }
bool grpc_are_polling_islands_equal(void *p, void *q) { bool grpc_are_polling_islands_equal(void *p, void *q) {
polling_island *p1 = p; polling_island *p1 = (polling_island *)p;
polling_island *p2 = q; polling_island *p2 = (polling_island *)q;
/* Note: polling_island_lock_pair() may change p1 and p2 to point to the /* Note: polling_island_lock_pair() may change p1 and p2 to point to the
latest polling islands in their respective linked lists */ latest polling islands in their respective linked lists */

@ -327,7 +327,7 @@ static void unref_by(grpc_fd *fd, int n) {
} }
static grpc_fd *fd_create(int fd, const char *name) { static grpc_fd *fd_create(int fd, const char *name) {
grpc_fd *r = gpr_malloc(sizeof(*r)); grpc_fd *r = (grpc_fd *)gpr_malloc(sizeof(*r));
gpr_mu_init(&r->mu); gpr_mu_init(&r->mu);
gpr_atm_rel_store(&r->refst, 1); gpr_atm_rel_store(&r->refst, 1);
r->shutdown = 0; r->shutdown = 0;
@ -842,8 +842,8 @@ static void pollset_add_fd(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
if (pollset->fd_count == pollset->fd_capacity) { if (pollset->fd_count == pollset->fd_capacity) {
pollset->fd_capacity = pollset->fd_capacity =
GPR_MAX(pollset->fd_capacity + 8, pollset->fd_count * 3 / 2); GPR_MAX(pollset->fd_capacity + 8, pollset->fd_count * 3 / 2);
pollset->fds = pollset->fds = (grpc_fd **)gpr_realloc(
gpr_realloc(pollset->fds, sizeof(grpc_fd *) * pollset->fd_capacity); pollset->fds, sizeof(grpc_fd *) * pollset->fd_capacity);
} }
pollset->fds[pollset->fd_count++] = fd; pollset->fds[pollset->fd_count++] = fd;
GRPC_FD_REF(fd, "multipoller"); GRPC_FD_REF(fd, "multipoller");
@ -895,7 +895,8 @@ static grpc_error *pollset_work(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
worker.wakeup_fd = pollset->local_wakeup_cache; worker.wakeup_fd = pollset->local_wakeup_cache;
pollset->local_wakeup_cache = worker.wakeup_fd->next; pollset->local_wakeup_cache = worker.wakeup_fd->next;
} else { } else {
worker.wakeup_fd = gpr_malloc(sizeof(*worker.wakeup_fd)); worker.wakeup_fd =
(grpc_cached_wakeup_fd *)gpr_malloc(sizeof(*worker.wakeup_fd));
error = grpc_wakeup_fd_init(&worker.wakeup_fd->fd); error = grpc_wakeup_fd_init(&worker.wakeup_fd->fd);
if (error != GRPC_ERROR_NONE) { if (error != GRPC_ERROR_NONE) {
GRPC_LOG_IF_ERROR("pollset_work", GRPC_ERROR_REF(error)); GRPC_LOG_IF_ERROR("pollset_work", GRPC_ERROR_REF(error));
@ -950,8 +951,8 @@ static grpc_error *pollset_work(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
const size_t pfd_size = sizeof(*pfds) * (pollset->fd_count + 2); const size_t pfd_size = sizeof(*pfds) * (pollset->fd_count + 2);
const size_t watch_size = sizeof(*watchers) * (pollset->fd_count + 2); const size_t watch_size = sizeof(*watchers) * (pollset->fd_count + 2);
void *buf = gpr_malloc(pfd_size + watch_size); void *buf = gpr_malloc(pfd_size + watch_size);
pfds = buf; pfds = (struct pollfd *)buf;
watchers = (void *)((char *)buf + pfd_size); watchers = (grpc_fd_watcher *)(void *)((char *)buf + pfd_size);
} }
fd_count = 0; fd_count = 0;
@ -1131,7 +1132,8 @@ static int poll_deadline_to_millis_timeout(gpr_timespec deadline,
*/ */
static grpc_pollset_set *pollset_set_create(void) { static grpc_pollset_set *pollset_set_create(void) {
grpc_pollset_set *pollset_set = gpr_zalloc(sizeof(*pollset_set)); grpc_pollset_set *pollset_set =
(grpc_pollset_set *)gpr_zalloc(sizeof(*pollset_set));
gpr_mu_init(&pollset_set->mu); gpr_mu_init(&pollset_set->mu);
return pollset_set; return pollset_set;
} }
@ -1174,9 +1176,9 @@ static void pollset_set_add_pollset(grpc_exec_ctx *exec_ctx,
if (pollset_set->pollset_count == pollset_set->pollset_capacity) { if (pollset_set->pollset_count == pollset_set->pollset_capacity) {
pollset_set->pollset_capacity = pollset_set->pollset_capacity =
GPR_MAX(8, 2 * pollset_set->pollset_capacity); GPR_MAX(8, 2 * pollset_set->pollset_capacity);
pollset_set->pollsets = pollset_set->pollsets = (grpc_pollset **)gpr_realloc(
gpr_realloc(pollset_set->pollsets, pollset_set->pollset_capacity * pollset_set->pollsets,
sizeof(*pollset_set->pollsets)); pollset_set->pollset_capacity * sizeof(*pollset_set->pollsets));
} }
pollset_set->pollsets[pollset_set->pollset_count++] = pollset; pollset_set->pollsets[pollset_set->pollset_count++] = pollset;
for (i = 0, j = 0; i < pollset_set->fd_count; i++) { for (i = 0, j = 0; i < pollset_set->fd_count; i++) {
@ -1225,9 +1227,9 @@ static void pollset_set_add_pollset_set(grpc_exec_ctx *exec_ctx,
gpr_mu_lock(&bag->mu); gpr_mu_lock(&bag->mu);
if (bag->pollset_set_count == bag->pollset_set_capacity) { if (bag->pollset_set_count == bag->pollset_set_capacity) {
bag->pollset_set_capacity = GPR_MAX(8, 2 * bag->pollset_set_capacity); bag->pollset_set_capacity = GPR_MAX(8, 2 * bag->pollset_set_capacity);
bag->pollset_sets = bag->pollset_sets = (grpc_pollset_set **)gpr_realloc(
gpr_realloc(bag->pollset_sets, bag->pollset_sets,
bag->pollset_set_capacity * sizeof(*bag->pollset_sets)); bag->pollset_set_capacity * sizeof(*bag->pollset_sets));
} }
bag->pollset_sets[bag->pollset_set_count++] = item; bag->pollset_sets[bag->pollset_set_count++] = item;
for (i = 0, j = 0; i < bag->fd_count; i++) { for (i = 0, j = 0; i < bag->fd_count; i++) {
@ -1264,7 +1266,7 @@ static void pollset_set_add_fd(grpc_exec_ctx *exec_ctx,
gpr_mu_lock(&pollset_set->mu); gpr_mu_lock(&pollset_set->mu);
if (pollset_set->fd_count == pollset_set->fd_capacity) { if (pollset_set->fd_count == pollset_set->fd_capacity) {
pollset_set->fd_capacity = GPR_MAX(8, 2 * pollset_set->fd_capacity); pollset_set->fd_capacity = GPR_MAX(8, 2 * pollset_set->fd_capacity);
pollset_set->fds = gpr_realloc( pollset_set->fds = (grpc_fd **)gpr_realloc(
pollset_set->fds, pollset_set->fd_capacity * sizeof(*pollset_set->fds)); pollset_set->fds, pollset_set->fd_capacity * sizeof(*pollset_set->fds));
} }
GRPC_FD_REF(fd, "pollset_set"); GRPC_FD_REF(fd, "pollset_set");
@ -1318,11 +1320,12 @@ static void cache_insert_locked(poll_args *args) {
} }
static void init_result(poll_args *pargs) { static void init_result(poll_args *pargs) {
pargs->result = gpr_malloc(sizeof(poll_result)); pargs->result = (poll_result *)gpr_malloc(sizeof(poll_result));
gpr_ref_init(&pargs->result->refcount, 1); gpr_ref_init(&pargs->result->refcount, 1);
pargs->result->watchers = NULL; pargs->result->watchers = NULL;
pargs->result->watchcount = 0; pargs->result->watchcount = 0;
pargs->result->fds = gpr_malloc(sizeof(struct pollfd) * pargs->nfds); pargs->result->fds =
(struct pollfd *)gpr_malloc(sizeof(struct pollfd) * pargs->nfds);
memcpy(pargs->result->fds, pargs->fds, sizeof(struct pollfd) * pargs->nfds); memcpy(pargs->result->fds, pargs->fds, sizeof(struct pollfd) * pargs->nfds);
pargs->result->nfds = pargs->nfds; pargs->result->nfds = pargs->nfds;
pargs->result->retval = 0; pargs->result->retval = 0;
@ -1361,7 +1364,7 @@ static poll_args *get_poller_locked(struct pollfd *fds, nfds_t count) {
return pargs; return pargs;
} }
poll_args *pargs = gpr_malloc(sizeof(struct poll_args)); poll_args *pargs = (poll_args *)gpr_malloc(sizeof(struct poll_args));
gpr_cv_init(&pargs->trigger); gpr_cv_init(&pargs->trigger);
pargs->fds = fds; pargs->fds = fds;
pargs->nfds = count; pargs->nfds = count;
@ -1408,7 +1411,8 @@ static void cache_poller_locked(poll_args *args) {
poll_args **old_active_pollers = poll_cache.active_pollers; poll_args **old_active_pollers = poll_cache.active_pollers;
poll_cache.size = poll_cache.size * 2; poll_cache.size = poll_cache.size * 2;
poll_cache.count = 0; poll_cache.count = 0;
poll_cache.active_pollers = gpr_malloc(sizeof(void *) * poll_cache.size); poll_cache.active_pollers =
(poll_args **)gpr_malloc(sizeof(void *) * poll_cache.size);
for (unsigned int i = 0; i < poll_cache.size; i++) { for (unsigned int i = 0; i < poll_cache.size; i++) {
poll_cache.active_pollers[i] = NULL; poll_cache.active_pollers[i] = NULL;
} }
@ -1513,12 +1517,12 @@ static int cvfd_poll(struct pollfd *fds, nfds_t nfds, int timeout) {
nfds_t nsockfds = 0; nfds_t nsockfds = 0;
poll_result *result = NULL; poll_result *result = NULL;
gpr_mu_lock(&g_cvfds.mu); gpr_mu_lock(&g_cvfds.mu);
pollcv = gpr_malloc(sizeof(cv_node)); pollcv = (cv_node *)gpr_malloc(sizeof(cv_node));
pollcv->next = NULL; pollcv->next = NULL;
gpr_cv pollcv_cv; gpr_cv pollcv_cv;
gpr_cv_init(&pollcv_cv); gpr_cv_init(&pollcv_cv);
pollcv->cv = &pollcv_cv; pollcv->cv = &pollcv_cv;
cv_node *fd_cvs = gpr_malloc(nfds * sizeof(cv_node)); cv_node *fd_cvs = (cv_node *)gpr_malloc(nfds * sizeof(cv_node));
for (i = 0; i < nfds; i++) { for (i = 0; i < nfds; i++) {
fds[i].revents = 0; fds[i].revents = 0;
@ -1550,7 +1554,8 @@ static int cvfd_poll(struct pollfd *fds, nfds_t nfds, int timeout) {
res = 0; res = 0;
if (!skip_poll && nsockfds > 0) { if (!skip_poll && nsockfds > 0) {
struct pollfd *pollfds = gpr_malloc(sizeof(struct pollfd) * nsockfds); struct pollfd *pollfds =
(struct pollfd *)gpr_malloc(sizeof(struct pollfd) * nsockfds);
idx = 0; idx = 0;
for (i = 0; i < nfds; i++) { for (i = 0; i < nfds; i++) {
if (fds[i].fd >= 0) { if (fds[i].fd >= 0) {
@ -1613,7 +1618,8 @@ static void global_cv_fd_table_init() {
gpr_cv_init(&g_cvfds.shutdown_cv); gpr_cv_init(&g_cvfds.shutdown_cv);
gpr_ref_init(&g_cvfds.pollcount, 1); gpr_ref_init(&g_cvfds.pollcount, 1);
g_cvfds.size = CV_DEFAULT_TABLE_SIZE; g_cvfds.size = CV_DEFAULT_TABLE_SIZE;
g_cvfds.cvfds = gpr_malloc(sizeof(fd_node) * CV_DEFAULT_TABLE_SIZE); g_cvfds.cvfds =
(fd_node *)gpr_malloc(sizeof(fd_node) * CV_DEFAULT_TABLE_SIZE);
g_cvfds.free_fds = NULL; g_cvfds.free_fds = NULL;
thread_grace = gpr_time_from_millis(POLLCV_THREAD_GRACE_MS, GPR_TIMESPAN); thread_grace = gpr_time_from_millis(POLLCV_THREAD_GRACE_MS, GPR_TIMESPAN);
for (int i = 0; i < CV_DEFAULT_TABLE_SIZE; i++) { for (int i = 0; i < CV_DEFAULT_TABLE_SIZE; i++) {
@ -1630,7 +1636,7 @@ static void global_cv_fd_table_init() {
poll_cache.size = 32; poll_cache.size = 32;
poll_cache.count = 0; poll_cache.count = 0;
poll_cache.free_pollers = NULL; poll_cache.free_pollers = NULL;
poll_cache.active_pollers = gpr_malloc(sizeof(void *) * 32); poll_cache.active_pollers = (poll_args **)gpr_malloc(sizeof(void *) * 32);
for (unsigned int i = 0; i < poll_cache.size; i++) { for (unsigned int i = 0; i < poll_cache.size; i++) {
poll_cache.active_pollers[i] = NULL; poll_cache.active_pollers[i] = NULL;
} }

@ -76,10 +76,10 @@ static void add(const char *beg, const char *end, char ***ss, size_t *ns) {
size_t len; size_t len;
GPR_ASSERT(end >= beg); GPR_ASSERT(end >= beg);
len = (size_t)(end - beg); len = (size_t)(end - beg);
s = gpr_malloc(len + 1); s = (char *)gpr_malloc(len + 1);
memcpy(s, beg, len); memcpy(s, beg, len);
s[len] = 0; s[len] = 0;
*ss = gpr_realloc(*ss, sizeof(char **) * np); *ss = (char **)gpr_realloc(*ss, sizeof(char **) * np);
(*ss)[n] = s; (*ss)[n] = s;
*ns = np; *ns = np;
} }

@ -82,7 +82,8 @@ void grpc_executor_set_threading(grpc_exec_ctx *exec_ctx, bool threading) {
g_max_threads = GPR_MAX(1, 2 * gpr_cpu_num_cores()); g_max_threads = GPR_MAX(1, 2 * gpr_cpu_num_cores());
gpr_atm_no_barrier_store(&g_cur_threads, 1); gpr_atm_no_barrier_store(&g_cur_threads, 1);
gpr_tls_init(&g_this_thread_state); gpr_tls_init(&g_this_thread_state);
g_thread_state = gpr_zalloc(sizeof(thread_state) * g_max_threads); g_thread_state =
(thread_state *)gpr_zalloc(sizeof(thread_state) * g_max_threads);
for (size_t i = 0; i < g_max_threads; i++) { for (size_t i = 0; i < g_max_threads; i++) {
gpr_mu_init(&g_thread_state[i].mu); gpr_mu_init(&g_thread_state[i].mu);
gpr_cv_init(&g_thread_state[i].cv); gpr_cv_init(&g_thread_state[i].cv);
@ -129,7 +130,7 @@ void grpc_executor_shutdown(grpc_exec_ctx *exec_ctx) {
} }
static void executor_thread(void *arg) { static void executor_thread(void *arg) {
thread_state *ts = arg; thread_state *ts = (thread_state *)arg;
gpr_tls_set(&g_this_thread_state, (intptr_t)ts); gpr_tls_set(&g_this_thread_state, (intptr_t)ts);
grpc_exec_ctx exec_ctx = grpc_exec_ctx exec_ctx =

@ -47,7 +47,8 @@ grpc_error *grpc_load_file(const char *filename, int add_null_terminator,
/* Converting to size_t on the assumption that it will not fail */ /* Converting to size_t on the assumption that it will not fail */
contents_size = (size_t)ftell(file); contents_size = (size_t)ftell(file);
fseek(file, 0, SEEK_SET); fseek(file, 0, SEEK_SET);
contents = gpr_malloc(contents_size + (add_null_terminator ? 1 : 0)); contents = (unsigned char *)gpr_malloc(contents_size +
(add_null_terminator ? 1 : 0));
bytes_read = fread(contents, 1, contents_size, file); bytes_read = fread(contents, 1, contents_size, file);
if (bytes_read < contents_size) { if (bytes_read < contents_size) {
error = GRPC_OS_ERROR(errno, "fread"); error = GRPC_OS_ERROR(errno, "fread");

@ -112,13 +112,14 @@ static grpc_error *blocking_resolve_address_impl(
} }
/* Success path: set addrs non-NULL, fill it in */ /* Success path: set addrs non-NULL, fill it in */
*addresses = gpr_malloc(sizeof(grpc_resolved_addresses)); *addresses =
(grpc_resolved_addresses *)gpr_malloc(sizeof(grpc_resolved_addresses));
(*addresses)->naddrs = 0; (*addresses)->naddrs = 0;
for (resp = result; resp != NULL; resp = resp->ai_next) { for (resp = result; resp != NULL; resp = resp->ai_next) {
(*addresses)->naddrs++; (*addresses)->naddrs++;
} }
(*addresses)->addrs = (*addresses)->addrs = (grpc_resolved_address *)gpr_malloc(
gpr_malloc(sizeof(grpc_resolved_address) * (*addresses)->naddrs); sizeof(grpc_resolved_address) * (*addresses)->naddrs);
i = 0; i = 0;
for (resp = result; resp != NULL; resp = resp->ai_next) { for (resp = result; resp != NULL; resp = resp->ai_next) {
memcpy(&(*addresses)->addrs[i].addr, resp->ai_addr, resp->ai_addrlen); memcpy(&(*addresses)->addrs[i].addr, resp->ai_addr, resp->ai_addrlen);
@ -153,7 +154,7 @@ typedef struct {
* grpc_blocking_resolve_address */ * grpc_blocking_resolve_address */
static void do_request_thread(grpc_exec_ctx *exec_ctx, void *rp, static void do_request_thread(grpc_exec_ctx *exec_ctx, void *rp,
grpc_error *error) { grpc_error *error) {
request *r = rp; request *r = (request *)rp;
GRPC_CLOSURE_SCHED( GRPC_CLOSURE_SCHED(
exec_ctx, r->on_done, exec_ctx, r->on_done,
grpc_blocking_resolve_address(r->name, r->default_port, r->addrs_out)); grpc_blocking_resolve_address(r->name, r->default_port, r->addrs_out));
@ -174,7 +175,7 @@ static void resolve_address_impl(grpc_exec_ctx *exec_ctx, const char *name,
grpc_pollset_set *interested_parties, grpc_pollset_set *interested_parties,
grpc_closure *on_done, grpc_closure *on_done,
grpc_resolved_addresses **addrs) { grpc_resolved_addresses **addrs) {
request *r = gpr_malloc(sizeof(request)); request *r = (request *)gpr_malloc(sizeof(request));
GRPC_CLOSURE_INIT(&r->request_closure, do_request_thread, r, GRPC_CLOSURE_INIT(&r->request_closure, do_request_thread, r,
grpc_executor_scheduler); grpc_executor_scheduler);
r->name = gpr_strdup(name); r->name = gpr_strdup(name);

@ -241,7 +241,7 @@ static bool rq_reclaim(grpc_exec_ctx *exec_ctx,
grpc_resource_quota *resource_quota, bool destructive); grpc_resource_quota *resource_quota, bool destructive);
static void rq_step(grpc_exec_ctx *exec_ctx, void *rq, grpc_error *error) { static void rq_step(grpc_exec_ctx *exec_ctx, void *rq, grpc_error *error) {
grpc_resource_quota *resource_quota = rq; grpc_resource_quota *resource_quota = (grpc_resource_quota *)rq;
resource_quota->step_scheduled = false; resource_quota->step_scheduled = false;
do { do {
if (rq_alloc(exec_ctx, resource_quota)) goto done; if (rq_alloc(exec_ctx, resource_quota)) goto done;
@ -380,12 +380,12 @@ typedef struct {
} ru_slice_refcount; } ru_slice_refcount;
static void ru_slice_ref(void *p) { static void ru_slice_ref(void *p) {
ru_slice_refcount *rc = p; ru_slice_refcount *rc = (ru_slice_refcount *)p;
gpr_ref(&rc->refs); gpr_ref(&rc->refs);
} }
static void ru_slice_unref(grpc_exec_ctx *exec_ctx, void *p) { static void ru_slice_unref(grpc_exec_ctx *exec_ctx, void *p) {
ru_slice_refcount *rc = p; ru_slice_refcount *rc = (ru_slice_refcount *)p;
if (gpr_unref(&rc->refs)) { if (gpr_unref(&rc->refs)) {
grpc_resource_user_free(exec_ctx, rc->resource_user, rc->size); grpc_resource_user_free(exec_ctx, rc->resource_user, rc->size);
gpr_free(rc); gpr_free(rc);
@ -398,7 +398,8 @@ static const grpc_slice_refcount_vtable ru_slice_vtable = {
static grpc_slice ru_slice_create(grpc_resource_user *resource_user, static grpc_slice ru_slice_create(grpc_resource_user *resource_user,
size_t size) { size_t size) {
ru_slice_refcount *rc = gpr_malloc(sizeof(ru_slice_refcount) + size); ru_slice_refcount *rc =
(ru_slice_refcount *)gpr_malloc(sizeof(ru_slice_refcount) + size);
rc->base.vtable = &ru_slice_vtable; rc->base.vtable = &ru_slice_vtable;
rc->base.sub_refcount = &rc->base; rc->base.sub_refcount = &rc->base;
gpr_ref_init(&rc->refs, 1); gpr_ref_init(&rc->refs, 1);
@ -417,7 +418,7 @@ static grpc_slice ru_slice_create(grpc_resource_user *resource_user,
*/ */
static void ru_allocate(grpc_exec_ctx *exec_ctx, void *ru, grpc_error *error) { static void ru_allocate(grpc_exec_ctx *exec_ctx, void *ru, grpc_error *error) {
grpc_resource_user *resource_user = ru; grpc_resource_user *resource_user = (grpc_resource_user *)ru;
if (rulist_empty(resource_user->resource_quota, if (rulist_empty(resource_user->resource_quota,
GRPC_RULIST_AWAITING_ALLOCATION)) { GRPC_RULIST_AWAITING_ALLOCATION)) {
rq_step_sched(exec_ctx, resource_user->resource_quota); rq_step_sched(exec_ctx, resource_user->resource_quota);
@ -427,7 +428,7 @@ static void ru_allocate(grpc_exec_ctx *exec_ctx, void *ru, grpc_error *error) {
static void ru_add_to_free_pool(grpc_exec_ctx *exec_ctx, void *ru, static void ru_add_to_free_pool(grpc_exec_ctx *exec_ctx, void *ru,
grpc_error *error) { grpc_error *error) {
grpc_resource_user *resource_user = ru; grpc_resource_user *resource_user = (grpc_resource_user *)ru;
if (!rulist_empty(resource_user->resource_quota, if (!rulist_empty(resource_user->resource_quota,
GRPC_RULIST_AWAITING_ALLOCATION) && GRPC_RULIST_AWAITING_ALLOCATION) &&
rulist_empty(resource_user->resource_quota, rulist_empty(resource_user->resource_quota,
@ -454,7 +455,7 @@ static bool ru_post_reclaimer(grpc_exec_ctx *exec_ctx,
static void ru_post_benign_reclaimer(grpc_exec_ctx *exec_ctx, void *ru, static void ru_post_benign_reclaimer(grpc_exec_ctx *exec_ctx, void *ru,
grpc_error *error) { grpc_error *error) {
grpc_resource_user *resource_user = ru; grpc_resource_user *resource_user = (grpc_resource_user *)ru;
if (!ru_post_reclaimer(exec_ctx, resource_user, false)) return; if (!ru_post_reclaimer(exec_ctx, resource_user, false)) return;
if (!rulist_empty(resource_user->resource_quota, if (!rulist_empty(resource_user->resource_quota,
GRPC_RULIST_AWAITING_ALLOCATION) && GRPC_RULIST_AWAITING_ALLOCATION) &&
@ -469,7 +470,7 @@ static void ru_post_benign_reclaimer(grpc_exec_ctx *exec_ctx, void *ru,
static void ru_post_destructive_reclaimer(grpc_exec_ctx *exec_ctx, void *ru, static void ru_post_destructive_reclaimer(grpc_exec_ctx *exec_ctx, void *ru,
grpc_error *error) { grpc_error *error) {
grpc_resource_user *resource_user = ru; grpc_resource_user *resource_user = (grpc_resource_user *)ru;
if (!ru_post_reclaimer(exec_ctx, resource_user, true)) return; if (!ru_post_reclaimer(exec_ctx, resource_user, true)) return;
if (!rulist_empty(resource_user->resource_quota, if (!rulist_empty(resource_user->resource_quota,
GRPC_RULIST_AWAITING_ALLOCATION) && GRPC_RULIST_AWAITING_ALLOCATION) &&
@ -485,7 +486,7 @@ static void ru_post_destructive_reclaimer(grpc_exec_ctx *exec_ctx, void *ru,
} }
static void ru_shutdown(grpc_exec_ctx *exec_ctx, void *ru, grpc_error *error) { static void ru_shutdown(grpc_exec_ctx *exec_ctx, void *ru, grpc_error *error) {
grpc_resource_user *resource_user = ru; grpc_resource_user *resource_user = (grpc_resource_user *)ru;
GRPC_CLOSURE_SCHED(exec_ctx, resource_user->reclaimers[0], GRPC_CLOSURE_SCHED(exec_ctx, resource_user->reclaimers[0],
GRPC_ERROR_CANCELLED); GRPC_ERROR_CANCELLED);
GRPC_CLOSURE_SCHED(exec_ctx, resource_user->reclaimers[1], GRPC_CLOSURE_SCHED(exec_ctx, resource_user->reclaimers[1],
@ -497,7 +498,7 @@ static void ru_shutdown(grpc_exec_ctx *exec_ctx, void *ru, grpc_error *error) {
} }
static void ru_destroy(grpc_exec_ctx *exec_ctx, void *ru, grpc_error *error) { static void ru_destroy(grpc_exec_ctx *exec_ctx, void *ru, grpc_error *error) {
grpc_resource_user *resource_user = ru; grpc_resource_user *resource_user = (grpc_resource_user *)ru;
GPR_ASSERT(gpr_atm_no_barrier_load(&resource_user->refs) == 0); GPR_ASSERT(gpr_atm_no_barrier_load(&resource_user->refs) == 0);
for (int i = 0; i < GRPC_RULIST_COUNT; i++) { for (int i = 0; i < GRPC_RULIST_COUNT; i++) {
rulist_remove(resource_user, (grpc_rulist)i); rulist_remove(resource_user, (grpc_rulist)i);
@ -518,7 +519,8 @@ static void ru_destroy(grpc_exec_ctx *exec_ctx, void *ru, grpc_error *error) {
static void ru_allocated_slices(grpc_exec_ctx *exec_ctx, void *arg, static void ru_allocated_slices(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_resource_user_slice_allocator *slice_allocator = arg; grpc_resource_user_slice_allocator *slice_allocator =
(grpc_resource_user_slice_allocator *)arg;
if (error == GRPC_ERROR_NONE) { if (error == GRPC_ERROR_NONE) {
for (size_t i = 0; i < slice_allocator->count; i++) { for (size_t i = 0; i < slice_allocator->count; i++) {
grpc_slice_buffer_add_indexed( grpc_slice_buffer_add_indexed(
@ -541,7 +543,7 @@ typedef struct {
} rq_resize_args; } rq_resize_args;
static void rq_resize(grpc_exec_ctx *exec_ctx, void *args, grpc_error *error) { static void rq_resize(grpc_exec_ctx *exec_ctx, void *args, grpc_error *error) {
rq_resize_args *a = args; rq_resize_args *a = (rq_resize_args *)args;
int64_t delta = a->size - a->resource_quota->size; int64_t delta = a->size - a->resource_quota->size;
a->resource_quota->size += delta; a->resource_quota->size += delta;
a->resource_quota->free_pool += delta; a->resource_quota->free_pool += delta;
@ -553,7 +555,7 @@ static void rq_resize(grpc_exec_ctx *exec_ctx, void *args, grpc_error *error) {
static void rq_reclamation_done(grpc_exec_ctx *exec_ctx, void *rq, static void rq_reclamation_done(grpc_exec_ctx *exec_ctx, void *rq,
grpc_error *error) { grpc_error *error) {
grpc_resource_quota *resource_quota = rq; grpc_resource_quota *resource_quota = (grpc_resource_quota *)rq;
resource_quota->reclaiming = false; resource_quota->reclaiming = false;
rq_step_sched(exec_ctx, resource_quota); rq_step_sched(exec_ctx, resource_quota);
grpc_resource_quota_unref_internal(exec_ctx, resource_quota); grpc_resource_quota_unref_internal(exec_ctx, resource_quota);
@ -565,7 +567,8 @@ static void rq_reclamation_done(grpc_exec_ctx *exec_ctx, void *rq,
/* Public API */ /* Public API */
grpc_resource_quota *grpc_resource_quota_create(const char *name) { grpc_resource_quota *grpc_resource_quota_create(const char *name) {
grpc_resource_quota *resource_quota = gpr_malloc(sizeof(*resource_quota)); grpc_resource_quota *resource_quota =
(grpc_resource_quota *)gpr_malloc(sizeof(*resource_quota));
gpr_ref_init(&resource_quota->refs, 1); gpr_ref_init(&resource_quota->refs, 1);
resource_quota->combiner = grpc_combiner_create(); resource_quota->combiner = grpc_combiner_create();
resource_quota->free_pool = INT64_MAX; resource_quota->free_pool = INT64_MAX;
@ -629,7 +632,7 @@ double grpc_resource_quota_get_memory_pressure(
void grpc_resource_quota_resize(grpc_resource_quota *resource_quota, void grpc_resource_quota_resize(grpc_resource_quota *resource_quota,
size_t size) { size_t size) {
grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT; grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
rq_resize_args *a = gpr_malloc(sizeof(*a)); rq_resize_args *a = (rq_resize_args *)gpr_malloc(sizeof(*a));
a->resource_quota = grpc_resource_quota_ref_internal(resource_quota); a->resource_quota = grpc_resource_quota_ref_internal(resource_quota);
a->size = (int64_t)size; a->size = (int64_t)size;
gpr_atm_no_barrier_store(&resource_quota->last_size, gpr_atm_no_barrier_store(&resource_quota->last_size,
@ -684,7 +687,8 @@ const grpc_arg_pointer_vtable *grpc_resource_quota_arg_vtable(void) {
grpc_resource_user *grpc_resource_user_create( grpc_resource_user *grpc_resource_user_create(
grpc_resource_quota *resource_quota, const char *name) { grpc_resource_quota *resource_quota, const char *name) {
grpc_resource_user *resource_user = gpr_malloc(sizeof(*resource_user)); grpc_resource_user *resource_user =
(grpc_resource_user *)gpr_malloc(sizeof(*resource_user));
resource_user->resource_quota = resource_user->resource_quota =
grpc_resource_quota_ref_internal(resource_quota); grpc_resource_quota_ref_internal(resource_quota);
GRPC_CLOSURE_INIT(&resource_user->allocate_closure, &ru_allocate, GRPC_CLOSURE_INIT(&resource_user->allocate_closure, &ru_allocate,

@ -80,7 +80,8 @@ static grpc_error *prepare_socket(const grpc_resolved_address *addr, int fd,
for (size_t i = 0; i < channel_args->num_args; i++) { for (size_t i = 0; i < channel_args->num_args; i++) {
if (0 == strcmp(channel_args->args[i].key, GRPC_ARG_SOCKET_MUTATOR)) { if (0 == strcmp(channel_args->args[i].key, GRPC_ARG_SOCKET_MUTATOR)) {
GPR_ASSERT(channel_args->args[i].type == GRPC_ARG_POINTER); GPR_ASSERT(channel_args->args[i].type == GRPC_ARG_POINTER);
grpc_socket_mutator *mutator = channel_args->args[i].value.pointer.p; grpc_socket_mutator *mutator =
(grpc_socket_mutator *)channel_args->args[i].value.pointer.p;
err = grpc_set_socket_with_mutator(fd, mutator); err = grpc_set_socket_with_mutator(fd, mutator);
if (err != GRPC_ERROR_NONE) goto error; if (err != GRPC_ERROR_NONE) goto error;
} }
@ -98,7 +99,7 @@ done:
static void tc_on_alarm(grpc_exec_ctx *exec_ctx, void *acp, grpc_error *error) { static void tc_on_alarm(grpc_exec_ctx *exec_ctx, void *acp, grpc_error *error) {
int done; int done;
async_connect *ac = acp; async_connect *ac = (async_connect *)acp;
if (GRPC_TRACER_ON(grpc_tcp_trace)) { if (GRPC_TRACER_ON(grpc_tcp_trace)) {
const char *str = grpc_error_string(error); const char *str = grpc_error_string(error);
gpr_log(GPR_DEBUG, "CLIENT_CONNECT: %s: on_alarm: error=%s", ac->addr_str, gpr_log(GPR_DEBUG, "CLIENT_CONNECT: %s: on_alarm: error=%s", ac->addr_str,
@ -126,7 +127,7 @@ grpc_endpoint *grpc_tcp_client_create_from_fd(
} }
static void on_writable(grpc_exec_ctx *exec_ctx, void *acp, grpc_error *error) { static void on_writable(grpc_exec_ctx *exec_ctx, void *acp, grpc_error *error) {
async_connect *ac = acp; async_connect *ac = (async_connect *)acp;
int so_error = 0; int so_error = 0;
socklen_t so_error_size; socklen_t so_error_size;
int err; int err;
@ -304,7 +305,7 @@ static void tcp_client_connect_impl(grpc_exec_ctx *exec_ctx,
grpc_pollset_set_add_fd(exec_ctx, interested_parties, fdobj); grpc_pollset_set_add_fd(exec_ctx, interested_parties, fdobj);
ac = gpr_malloc(sizeof(async_connect)); ac = (async_connect *)gpr_malloc(sizeof(async_connect));
ac->closure = closure; ac->closure = closure;
ac->ep = ep; ac->ep = ep;
ac->fd = fdobj; ac->fd = fdobj;

@ -307,7 +307,7 @@ static void tcp_do_read(grpc_exec_ctx *exec_ctx, grpc_tcp *tcp) {
static void tcp_read_allocation_done(grpc_exec_ctx *exec_ctx, void *tcpp, static void tcp_read_allocation_done(grpc_exec_ctx *exec_ctx, void *tcpp,
grpc_error *error) { grpc_error *error) {
grpc_tcp *tcp = tcpp; grpc_tcp *tcp = (grpc_tcp *)tcpp;
if (error != GRPC_ERROR_NONE) { if (error != GRPC_ERROR_NONE) {
grpc_slice_buffer_reset_and_unref_internal(exec_ctx, tcp->incoming_buffer); grpc_slice_buffer_reset_and_unref_internal(exec_ctx, tcp->incoming_buffer);
grpc_slice_buffer_reset_and_unref_internal(exec_ctx, grpc_slice_buffer_reset_and_unref_internal(exec_ctx,

@ -74,7 +74,7 @@ grpc_error *grpc_tcp_server_create(grpc_exec_ctx *exec_ctx,
grpc_tcp_server **server) { grpc_tcp_server **server) {
gpr_once_init(&check_init, init); gpr_once_init(&check_init, init);
grpc_tcp_server *s = gpr_zalloc(sizeof(grpc_tcp_server)); grpc_tcp_server *s = (grpc_tcp_server *)gpr_zalloc(sizeof(grpc_tcp_server));
s->so_reuseport = has_so_reuseport; s->so_reuseport = has_so_reuseport;
s->expand_wildcard_addrs = false; s->expand_wildcard_addrs = false;
for (size_t i = 0; i < (args == NULL ? 0 : args->num_args); i++) { for (size_t i = 0; i < (args == NULL ? 0 : args->num_args); i++) {
@ -138,7 +138,7 @@ static void finish_shutdown(grpc_exec_ctx *exec_ctx, grpc_tcp_server *s) {
static void destroyed_port(grpc_exec_ctx *exec_ctx, void *server, static void destroyed_port(grpc_exec_ctx *exec_ctx, void *server,
grpc_error *error) { grpc_error *error) {
grpc_tcp_server *s = server; grpc_tcp_server *s = (grpc_tcp_server *)server;
gpr_mu_lock(&s->mu); gpr_mu_lock(&s->mu);
s->destroyed_ports++; s->destroyed_ports++;
if (s->destroyed_ports == s->nports) { if (s->destroyed_ports == s->nports) {
@ -197,7 +197,7 @@ static void tcp_server_destroy(grpc_exec_ctx *exec_ctx, grpc_tcp_server *s) {
/* event manager callback when reads are ready */ /* event manager callback when reads are ready */
static void on_read(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *err) { static void on_read(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *err) {
grpc_tcp_listener *sp = arg; grpc_tcp_listener *sp = (grpc_tcp_listener *)arg;
if (err != GRPC_ERROR_NONE) { if (err != GRPC_ERROR_NONE) {
goto error; goto error;
@ -251,7 +251,8 @@ static void on_read(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *err) {
grpc_pollset_add_fd(exec_ctx, read_notifier_pollset, fdobj); grpc_pollset_add_fd(exec_ctx, read_notifier_pollset, fdobj);
// Create acceptor. // Create acceptor.
grpc_tcp_server_acceptor *acceptor = gpr_malloc(sizeof(*acceptor)); grpc_tcp_server_acceptor *acceptor =
(grpc_tcp_server_acceptor *)gpr_malloc(sizeof(*acceptor));
acceptor->from_server = sp->server; acceptor->from_server = sp->server;
acceptor->port_index = sp->port_index; acceptor->port_index = sp->port_index;
acceptor->fd_index = sp->fd_index; acceptor->fd_index = sp->fd_index;
@ -365,7 +366,7 @@ static grpc_error *clone_port(grpc_tcp_listener *listener, unsigned count) {
listener->server->nports++; listener->server->nports++;
grpc_sockaddr_to_string(&addr_str, &listener->addr, 1); grpc_sockaddr_to_string(&addr_str, &listener->addr, 1);
gpr_asprintf(&name, "tcp-server-listener:%s/clone-%d", addr_str, i); gpr_asprintf(&name, "tcp-server-listener:%s/clone-%d", addr_str, i);
sp = gpr_malloc(sizeof(grpc_tcp_listener)); sp = (grpc_tcp_listener *)gpr_malloc(sizeof(grpc_tcp_listener));
sp->next = listener->next; sp->next = listener->next;
listener->next = sp; listener->next = sp;
/* sp (the new listener) is a sibling of 'listener' (the original /* sp (the new listener) is a sibling of 'listener' (the original

@ -93,7 +93,7 @@ static grpc_error *add_socket_to_server(grpc_tcp_server *s, int fd,
gpr_mu_lock(&s->mu); gpr_mu_lock(&s->mu);
s->nports++; s->nports++;
GPR_ASSERT(!s->on_accept_cb && "must add ports before starting server"); GPR_ASSERT(!s->on_accept_cb && "must add ports before starting server");
sp = gpr_malloc(sizeof(grpc_tcp_listener)); sp = (grpc_tcp_listener *)gpr_malloc(sizeof(grpc_tcp_listener));
sp->next = NULL; sp->next = NULL;
if (s->head == NULL) { if (s->head == NULL) {
s->head = sp; s->head = sp;

@ -74,8 +74,8 @@ static void maybe_shrink(grpc_timer_heap *heap) {
if (heap->timer_count >= 8 && if (heap->timer_count >= 8 &&
heap->timer_count <= heap->timer_capacity / SHRINK_FULLNESS_FACTOR / 2) { heap->timer_count <= heap->timer_capacity / SHRINK_FULLNESS_FACTOR / 2) {
heap->timer_capacity = heap->timer_count * SHRINK_FULLNESS_FACTOR; heap->timer_capacity = heap->timer_count * SHRINK_FULLNESS_FACTOR;
heap->timers = heap->timers = (grpc_timer **)gpr_realloc(
gpr_realloc(heap->timers, heap->timer_capacity * sizeof(grpc_timer *)); heap->timers, heap->timer_capacity * sizeof(grpc_timer *));
} }
} }
@ -99,8 +99,8 @@ int grpc_timer_heap_add(grpc_timer_heap *heap, grpc_timer *timer) {
if (heap->timer_count == heap->timer_capacity) { if (heap->timer_count == heap->timer_capacity) {
heap->timer_capacity = heap->timer_capacity =
GPR_MAX(heap->timer_capacity + 1, heap->timer_capacity * 3 / 2); GPR_MAX(heap->timer_capacity + 1, heap->timer_capacity * 3 / 2);
heap->timers = heap->timers = (grpc_timer **)gpr_realloc(
gpr_realloc(heap->timers, heap->timer_capacity * sizeof(grpc_timer *)); heap->timers, heap->timer_capacity * sizeof(grpc_timer *));
} }
timer->heap_index = heap->timer_count; timer->heap_index = heap->timer_count;
adjust_upwards(heap->timers, heap->timer_count, timer); adjust_upwards(heap->timers, heap->timer_count, timer);

@ -83,7 +83,7 @@ static void start_timer_thread_and_unlock(void) {
} }
gpr_thd_options opt = gpr_thd_options_default(); gpr_thd_options opt = gpr_thd_options_default();
gpr_thd_options_set_joinable(&opt); gpr_thd_options_set_joinable(&opt);
completed_thread *ct = gpr_malloc(sizeof(*ct)); completed_thread *ct = (completed_thread *)gpr_malloc(sizeof(*ct));
// The call to gpr_thd_new() has to be under the same lock used by // The call to gpr_thd_new() has to be under the same lock used by
// gc_completed_threads(), particularly due to ct->t, which is written here // gc_completed_threads(), particularly due to ct->t, which is written here
// (internally by gpr_thd_new) and read there. Otherwise it's possible for ct // (internally by gpr_thd_new) and read there. Otherwise it's possible for ct

@ -125,7 +125,7 @@ static grpc_socket_factory *get_socket_factory(const grpc_channel_args *args) {
} }
grpc_udp_server *grpc_udp_server_create(const grpc_channel_args *args) { grpc_udp_server *grpc_udp_server_create(const grpc_channel_args *args) {
grpc_udp_server *s = gpr_malloc(sizeof(grpc_udp_server)); grpc_udp_server *s = (grpc_udp_server *)gpr_malloc(sizeof(grpc_udp_server));
gpr_mu_init(&s->mu); gpr_mu_init(&s->mu);
s->socket_factory = get_socket_factory(args); s->socket_factory = get_socket_factory(args);
if (s->socket_factory) { if (s->socket_factory) {
@ -176,7 +176,7 @@ static void finish_shutdown(grpc_exec_ctx *exec_ctx, grpc_udp_server *s) {
static void destroyed_port(grpc_exec_ctx *exec_ctx, void *server, static void destroyed_port(grpc_exec_ctx *exec_ctx, void *server,
grpc_error *error) { grpc_error *error) {
grpc_udp_server *s = server; grpc_udp_server *s = (grpc_udp_server *)server;
gpr_mu_lock(&s->mu); gpr_mu_lock(&s->mu);
s->destroyed_ports++; s->destroyed_ports++;
if (s->destroyed_ports == s->nports) { if (s->destroyed_ports == s->nports) {
@ -237,7 +237,8 @@ void grpc_udp_server_destroy(grpc_exec_ctx *exec_ctx, grpc_udp_server *s,
if (s->active_ports) { if (s->active_ports) {
for (sp = s->head; sp; sp = sp->next) { for (sp = s->head; sp; sp = sp->next) {
GPR_ASSERT(sp->orphan_cb); GPR_ASSERT(sp->orphan_cb);
struct shutdown_fd_args *args = gpr_malloc(sizeof(*args)); struct shutdown_fd_args *args =
(struct shutdown_fd_args *)gpr_malloc(sizeof(*args));
args->fd = sp->emfd; args->fd = sp->emfd;
args->server_mu = &s->mu; args->server_mu = &s->mu;
GRPC_CLOSURE_INIT(&sp->orphan_fd_closure, shutdown_fd, args, GRPC_CLOSURE_INIT(&sp->orphan_fd_closure, shutdown_fd, args,
@ -331,7 +332,7 @@ error:
/* event manager callback when reads are ready */ /* event manager callback when reads are ready */
static void on_read(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) { static void on_read(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
grpc_udp_listener *sp = arg; grpc_udp_listener *sp = (grpc_udp_listener *)arg;
gpr_mu_lock(&sp->server->mu); gpr_mu_lock(&sp->server->mu);
if (error != GRPC_ERROR_NONE) { if (error != GRPC_ERROR_NONE) {
@ -354,7 +355,7 @@ static void on_read(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
} }
static void on_write(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) { static void on_write(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
grpc_udp_listener *sp = arg; grpc_udp_listener *sp = (grpc_udp_listener *)arg;
gpr_mu_lock(&(sp->server->mu)); gpr_mu_lock(&(sp->server->mu));
if (error != GRPC_ERROR_NONE) { if (error != GRPC_ERROR_NONE) {
@ -393,7 +394,7 @@ static int add_socket_to_server(grpc_udp_server *s, int fd,
gpr_free(addr_str); gpr_free(addr_str);
gpr_mu_lock(&s->mu); gpr_mu_lock(&s->mu);
s->nports++; s->nports++;
sp = gpr_malloc(sizeof(grpc_udp_listener)); sp = (grpc_udp_listener *)gpr_malloc(sizeof(grpc_udp_listener));
sp->next = NULL; sp->next = NULL;
if (s->head == NULL) { if (s->head == NULL) {
s->head = sp; s->head = sp;
@ -444,7 +445,8 @@ int grpc_udp_server_add_port(grpc_udp_server *s,
(socklen_t *)&sockname_temp.len)) { (socklen_t *)&sockname_temp.len)) {
port = grpc_sockaddr_get_port(&sockname_temp); port = grpc_sockaddr_get_port(&sockname_temp);
if (port > 0) { if (port > 0) {
allocated_addr = gpr_malloc(sizeof(grpc_resolved_address)); allocated_addr = (grpc_resolved_address *)gpr_malloc(
sizeof(grpc_resolved_address));
memcpy(allocated_addr, addr, sizeof(grpc_resolved_address)); memcpy(allocated_addr, addr, sizeof(grpc_resolved_address));
grpc_sockaddr_set_port(allocated_addr, port); grpc_sockaddr_set_port(allocated_addr, port);
addr = allocated_addr; addr = allocated_addr;

@ -49,9 +49,11 @@ grpc_error *grpc_resolve_unix_domain_address(const char *name,
gpr_free(err_msg); gpr_free(err_msg);
return err; return err;
} }
*addrs = gpr_malloc(sizeof(grpc_resolved_addresses)); *addrs =
(grpc_resolved_addresses *)gpr_malloc(sizeof(grpc_resolved_addresses));
(*addrs)->naddrs = 1; (*addrs)->naddrs = 1;
(*addrs)->addrs = gpr_malloc(sizeof(grpc_resolved_address)); (*addrs)->addrs =
(grpc_resolved_address *)gpr_malloc(sizeof(grpc_resolved_address));
un = (struct sockaddr_un *)(*addrs)->addrs->addr; un = (struct sockaddr_un *)(*addrs)->addrs->addr;
un->sun_family = AF_UNIX; un->sun_family = AF_UNIX;
strcpy(un->sun_path, name); strcpy(un->sun_path, name);

@ -42,7 +42,8 @@ static grpc_error* cv_fd_init(grpc_wakeup_fd* fd_info) {
gpr_mu_lock(&g_cvfds.mu); gpr_mu_lock(&g_cvfds.mu);
if (!g_cvfds.free_fds) { if (!g_cvfds.free_fds) {
newsize = GPR_MIN(g_cvfds.size * 2, g_cvfds.size + MAX_TABLE_RESIZE); newsize = GPR_MIN(g_cvfds.size * 2, g_cvfds.size + MAX_TABLE_RESIZE);
g_cvfds.cvfds = gpr_realloc(g_cvfds.cvfds, sizeof(fd_node) * newsize); g_cvfds.cvfds =
(fd_node*)gpr_realloc(g_cvfds.cvfds, sizeof(fd_node) * newsize);
for (i = g_cvfds.size; i < newsize; i++) { for (i = g_cvfds.size; i < newsize; i++) {
g_cvfds.cvfds[i].is_set = 0; g_cvfds.cvfds[i].is_set = 0;
g_cvfds.cvfds[i].cvs = NULL; g_cvfds.cvfds[i].cvs = NULL;

@ -23,7 +23,7 @@
#include "src/core/lib/json/json.h" #include "src/core/lib/json/json.h"
grpc_json* grpc_json_create(grpc_json_type type) { grpc_json* grpc_json_create(grpc_json_type type) {
grpc_json* json = gpr_zalloc(sizeof(*json)); grpc_json* json = (grpc_json*)gpr_zalloc(sizeof(*json));
json->type = type; json->type = type;
return json; return json;

@ -63,19 +63,19 @@ typedef struct {
* bytes at a time (or multiples thereof). * bytes at a time (or multiples thereof).
*/ */
static void json_writer_output_check(void *userdata, size_t needed) { static void json_writer_output_check(void *userdata, size_t needed) {
json_writer_userdata *state = userdata; json_writer_userdata *state = (json_writer_userdata *)userdata;
if (state->free_space >= needed) return; if (state->free_space >= needed) return;
needed -= state->free_space; needed -= state->free_space;
/* Round up by 256 bytes. */ /* Round up by 256 bytes. */
needed = (needed + 0xff) & ~0xffU; needed = (needed + 0xff) & ~0xffU;
state->output = gpr_realloc(state->output, state->allocated + needed); state->output = (char *)gpr_realloc(state->output, state->allocated + needed);
state->free_space += needed; state->free_space += needed;
state->allocated += needed; state->allocated += needed;
} }
/* These are needed by the writer's implementation. */ /* These are needed by the writer's implementation. */
static void json_writer_output_char(void *userdata, char c) { static void json_writer_output_char(void *userdata, char c) {
json_writer_userdata *state = userdata; json_writer_userdata *state = (json_writer_userdata *)userdata;
json_writer_output_check(userdata, 1); json_writer_output_check(userdata, 1);
state->output[state->string_len++] = c; state->output[state->string_len++] = c;
state->free_space--; state->free_space--;
@ -83,7 +83,7 @@ static void json_writer_output_char(void *userdata, char c) {
static void json_writer_output_string_with_len(void *userdata, const char *str, static void json_writer_output_string_with_len(void *userdata, const char *str,
size_t len) { size_t len) {
json_writer_userdata *state = userdata; json_writer_userdata *state = (json_writer_userdata *)userdata;
json_writer_output_check(userdata, len); json_writer_output_check(userdata, len);
memcpy(state->output + state->string_len, str, len); memcpy(state->output + state->string_len, str, len);
state->string_len += len; state->string_len += len;
@ -99,7 +99,7 @@ static void json_writer_output_string(void *userdata, const char *str) {
* the end of the current string, and advance our output pointer. * the end of the current string, and advance our output pointer.
*/ */
static void json_reader_string_clear(void *userdata) { static void json_reader_string_clear(void *userdata) {
json_reader_userdata *state = userdata; json_reader_userdata *state = (json_reader_userdata *)userdata;
if (state->string) { if (state->string) {
GPR_ASSERT(state->string_ptr < state->input); GPR_ASSERT(state->string_ptr < state->input);
*state->string_ptr++ = 0; *state->string_ptr++ = 0;
@ -108,7 +108,7 @@ static void json_reader_string_clear(void *userdata) {
} }
static void json_reader_string_add_char(void *userdata, uint32_t c) { static void json_reader_string_add_char(void *userdata, uint32_t c) {
json_reader_userdata *state = userdata; json_reader_userdata *state = (json_reader_userdata *)userdata;
GPR_ASSERT(state->string_ptr < state->input); GPR_ASSERT(state->string_ptr < state->input);
GPR_ASSERT(c <= 0xff); GPR_ASSERT(c <= 0xff);
*state->string_ptr++ = (uint8_t)c; *state->string_ptr++ = (uint8_t)c;
@ -149,7 +149,7 @@ static void json_reader_string_add_utf32(void *userdata, uint32_t c) {
*/ */
static uint32_t json_reader_read_char(void *userdata) { static uint32_t json_reader_read_char(void *userdata) {
uint32_t r; uint32_t r;
json_reader_userdata *state = userdata; json_reader_userdata *state = (json_reader_userdata *)userdata;
if (state->remaining_input == 0) return GRPC_JSON_READ_CHAR_EOF; if (state->remaining_input == 0) return GRPC_JSON_READ_CHAR_EOF;
@ -168,7 +168,7 @@ static uint32_t json_reader_read_char(void *userdata) {
* our tree-in-progress inside our opaque structure. * our tree-in-progress inside our opaque structure.
*/ */
static grpc_json *json_create_and_link(void *userdata, grpc_json_type type) { static grpc_json *json_create_and_link(void *userdata, grpc_json_type type) {
json_reader_userdata *state = userdata; json_reader_userdata *state = (json_reader_userdata *)userdata;
grpc_json *json = grpc_json_create(type); grpc_json *json = grpc_json_create(type);
json->parent = state->current_container; json->parent = state->current_container;
@ -194,7 +194,7 @@ static grpc_json *json_create_and_link(void *userdata, grpc_json_type type) {
} }
static void json_reader_container_begins(void *userdata, grpc_json_type type) { static void json_reader_container_begins(void *userdata, grpc_json_type type) {
json_reader_userdata *state = userdata; json_reader_userdata *state = (json_reader_userdata *)userdata;
grpc_json *container; grpc_json *container;
GPR_ASSERT(type == GRPC_JSON_ARRAY || type == GRPC_JSON_OBJECT); GPR_ASSERT(type == GRPC_JSON_ARRAY || type == GRPC_JSON_OBJECT);
@ -215,7 +215,7 @@ static void json_reader_container_begins(void *userdata, grpc_json_type type) {
*/ */
static grpc_json_type json_reader_container_ends(void *userdata) { static grpc_json_type json_reader_container_ends(void *userdata) {
grpc_json_type container_type = GRPC_JSON_TOP_LEVEL; grpc_json_type container_type = GRPC_JSON_TOP_LEVEL;
json_reader_userdata *state = userdata; json_reader_userdata *state = (json_reader_userdata *)userdata;
GPR_ASSERT(state->current_container); GPR_ASSERT(state->current_container);
@ -236,18 +236,18 @@ static grpc_json_type json_reader_container_ends(void *userdata) {
* We'll keep it as a string, and leave it to the caller to evaluate it. * We'll keep it as a string, and leave it to the caller to evaluate it.
*/ */
static void json_reader_set_key(void *userdata) { static void json_reader_set_key(void *userdata) {
json_reader_userdata *state = userdata; json_reader_userdata *state = (json_reader_userdata *)userdata;
state->key = state->string; state->key = state->string;
} }
static void json_reader_set_string(void *userdata) { static void json_reader_set_string(void *userdata) {
json_reader_userdata *state = userdata; json_reader_userdata *state = (json_reader_userdata *)userdata;
grpc_json *json = json_create_and_link(userdata, GRPC_JSON_STRING); grpc_json *json = json_create_and_link(userdata, GRPC_JSON_STRING);
json->value = (char *)state->string; json->value = (char *)state->string;
} }
static int json_reader_set_number(void *userdata) { static int json_reader_set_number(void *userdata) {
json_reader_userdata *state = userdata; json_reader_userdata *state = (json_reader_userdata *)userdata;
grpc_json *json = json_create_and_link(userdata, GRPC_JSON_NUMBER); grpc_json *json = json_create_and_link(userdata, GRPC_JSON_NUMBER);
json->value = (char *)state->string; json->value = (char *)state->string;
return 1; return 1;

@ -58,7 +58,7 @@ char *grpc_base64_encode(const void *vdata, size_t data_size, int url_safe,
int multiline) { int multiline) {
size_t result_projected_size = size_t result_projected_size =
grpc_base64_estimate_encoded_size(data_size, url_safe, multiline); grpc_base64_estimate_encoded_size(data_size, url_safe, multiline);
char *result = gpr_malloc(result_projected_size); char *result = (char *)gpr_malloc(result_projected_size);
grpc_base64_encode_core(result, vdata, data_size, url_safe, multiline); grpc_base64_encode_core(result, vdata, data_size, url_safe, multiline);
return result; return result;
} }
@ -75,7 +75,7 @@ size_t grpc_base64_estimate_encoded_size(size_t data_size, int url_safe,
void grpc_base64_encode_core(char *result, const void *vdata, size_t data_size, void grpc_base64_encode_core(char *result, const void *vdata, size_t data_size,
int url_safe, int multiline) { int url_safe, int multiline) {
const unsigned char *data = vdata; const unsigned char *data = (const unsigned char *)vdata;
const char *base64_chars = const char *base64_chars =
url_safe ? base64_url_safe_chars : base64_url_unsafe_chars; url_safe ? base64_url_safe_chars : base64_url_unsafe_chars;
const size_t result_projected_size = const size_t result_projected_size =

@ -27,7 +27,7 @@
#include "src/core/lib/iomgr/exec_ctx.h" #include "src/core/lib/iomgr/exec_ctx.h"
char *grpc_slice_to_c_string(grpc_slice slice) { char *grpc_slice_to_c_string(grpc_slice slice) {
char *out = gpr_malloc(GRPC_SLICE_LENGTH(slice) + 1); char *out = (char *)gpr_malloc(GRPC_SLICE_LENGTH(slice) + 1);
memcpy(out, GRPC_SLICE_START_PTR(slice), GRPC_SLICE_LENGTH(slice)); memcpy(out, GRPC_SLICE_START_PTR(slice), GRPC_SLICE_LENGTH(slice));
out[GRPC_SLICE_LENGTH(slice)] = 0; out[GRPC_SLICE_LENGTH(slice)] = 0;
return out; return out;
@ -105,12 +105,12 @@ typedef struct new_slice_refcount {
} new_slice_refcount; } new_slice_refcount;
static void new_slice_ref(void *p) { static void new_slice_ref(void *p) {
new_slice_refcount *r = p; new_slice_refcount *r = (new_slice_refcount *)p;
gpr_ref(&r->refs); gpr_ref(&r->refs);
} }
static void new_slice_unref(grpc_exec_ctx *exec_ctx, void *p) { static void new_slice_unref(grpc_exec_ctx *exec_ctx, void *p) {
new_slice_refcount *r = p; new_slice_refcount *r = (new_slice_refcount *)p;
if (gpr_unref(&r->refs)) { if (gpr_unref(&r->refs)) {
r->user_destroy(r->user_data); r->user_destroy(r->user_data);
gpr_free(r); gpr_free(r);
@ -125,7 +125,8 @@ grpc_slice grpc_slice_new_with_user_data(void *p, size_t len,
void (*destroy)(void *), void (*destroy)(void *),
void *user_data) { void *user_data) {
grpc_slice slice; grpc_slice slice;
new_slice_refcount *rc = gpr_malloc(sizeof(new_slice_refcount)); new_slice_refcount *rc =
(new_slice_refcount *)gpr_malloc(sizeof(new_slice_refcount));
gpr_ref_init(&rc->refs, 1); gpr_ref_init(&rc->refs, 1);
rc->rc.vtable = &new_slice_vtable; rc->rc.vtable = &new_slice_vtable;
rc->rc.sub_refcount = &rc->rc; rc->rc.sub_refcount = &rc->rc;
@ -133,7 +134,7 @@ grpc_slice grpc_slice_new_with_user_data(void *p, size_t len,
rc->user_data = user_data; rc->user_data = user_data;
slice.refcount = &rc->rc; slice.refcount = &rc->rc;
slice.data.refcounted.bytes = p; slice.data.refcounted.bytes = (uint8_t *)p;
slice.data.refcounted.length = len; slice.data.refcounted.length = len;
return slice; return slice;
} }
@ -154,12 +155,12 @@ typedef struct new_with_len_slice_refcount {
} new_with_len_slice_refcount; } new_with_len_slice_refcount;
static void new_with_len_ref(void *p) { static void new_with_len_ref(void *p) {
new_with_len_slice_refcount *r = p; new_with_len_slice_refcount *r = (new_with_len_slice_refcount *)p;
gpr_ref(&r->refs); gpr_ref(&r->refs);
} }
static void new_with_len_unref(grpc_exec_ctx *exec_ctx, void *p) { static void new_with_len_unref(grpc_exec_ctx *exec_ctx, void *p) {
new_with_len_slice_refcount *r = p; new_with_len_slice_refcount *r = (new_with_len_slice_refcount *)p;
if (gpr_unref(&r->refs)) { if (gpr_unref(&r->refs)) {
r->user_destroy(r->user_data, r->user_length); r->user_destroy(r->user_data, r->user_length);
gpr_free(r); gpr_free(r);
@ -183,7 +184,7 @@ grpc_slice grpc_slice_new_with_len(void *p, size_t len,
rc->user_length = len; rc->user_length = len;
slice.refcount = &rc->rc; slice.refcount = &rc->rc;
slice.data.refcounted.bytes = p; slice.data.refcounted.bytes = (uint8_t *)p;
slice.data.refcounted.length = len; slice.data.refcounted.length = len;
return slice; return slice;
} }
@ -205,12 +206,12 @@ typedef struct {
} malloc_refcount; } malloc_refcount;
static void malloc_ref(void *p) { static void malloc_ref(void *p) {
malloc_refcount *r = p; malloc_refcount *r = (malloc_refcount *)p;
gpr_ref(&r->refs); gpr_ref(&r->refs);
} }
static void malloc_unref(grpc_exec_ctx *exec_ctx, void *p) { static void malloc_unref(grpc_exec_ctx *exec_ctx, void *p) {
malloc_refcount *r = p; malloc_refcount *r = (malloc_refcount *)p;
if (gpr_unref(&r->refs)) { if (gpr_unref(&r->refs)) {
gpr_free(r); gpr_free(r);
} }
@ -232,7 +233,8 @@ grpc_slice grpc_slice_malloc_large(size_t length) {
refcount is a malloc_refcount refcount is a malloc_refcount
bytes is an array of bytes of the requested length bytes is an array of bytes of the requested length
Both parts are placed in the same allocation returned from gpr_malloc */ Both parts are placed in the same allocation returned from gpr_malloc */
malloc_refcount *rc = gpr_malloc(sizeof(malloc_refcount) + length); malloc_refcount *rc =
(malloc_refcount *)gpr_malloc(sizeof(malloc_refcount) + length);
/* Initial refcount on rc is 1 - and it's up to the caller to release /* Initial refcount on rc is 1 - and it's up to the caller to release
this reference. */ this reference. */
@ -451,7 +453,7 @@ int grpc_slice_rchr(grpc_slice s, char c) {
int grpc_slice_chr(grpc_slice s, char c) { int grpc_slice_chr(grpc_slice s, char c) {
const char *b = (const char *)GRPC_SLICE_START_PTR(s); const char *b = (const char *)GRPC_SLICE_START_PTR(s);
const char *p = memchr(b, c, GRPC_SLICE_LENGTH(s)); const char *p = (const char *)memchr(b, c, GRPC_SLICE_LENGTH(s));
return p == NULL ? -1 : (int)(p - b); return p == NULL ? -1 : (int)(p - b);
} }

@ -45,11 +45,12 @@ static void maybe_embiggen(grpc_slice_buffer *sb) {
sb->capacity = GROW(sb->capacity); sb->capacity = GROW(sb->capacity);
GPR_ASSERT(sb->capacity > slice_count); GPR_ASSERT(sb->capacity > slice_count);
if (sb->base_slices == sb->inlined) { if (sb->base_slices == sb->inlined) {
sb->base_slices = gpr_malloc(sb->capacity * sizeof(grpc_slice)); sb->base_slices =
(grpc_slice *)gpr_malloc(sb->capacity * sizeof(grpc_slice));
memcpy(sb->base_slices, sb->inlined, slice_count * sizeof(grpc_slice)); memcpy(sb->base_slices, sb->inlined, slice_count * sizeof(grpc_slice));
} else { } else {
sb->base_slices = sb->base_slices = (grpc_slice *)gpr_realloc(
gpr_realloc(sb->base_slices, sb->capacity * sizeof(grpc_slice)); sb->base_slices, sb->capacity * sizeof(grpc_slice));
} }
sb->slices = sb->base_slices + slice_offset; sb->slices = sb->base_slices + slice_offset;
@ -291,7 +292,7 @@ void grpc_slice_buffer_move_first_no_ref(grpc_slice_buffer *src, size_t n,
void grpc_slice_buffer_move_first_into_buffer(grpc_exec_ctx *exec_ctx, void grpc_slice_buffer_move_first_into_buffer(grpc_exec_ctx *exec_ctx,
grpc_slice_buffer *src, size_t n, grpc_slice_buffer *src, size_t n,
void *dst) { void *dst) {
char *dstp = dst; char *dstp = (char *)dst;
GPR_ASSERT(src->length >= n); GPR_ASSERT(src->length >= n);
while (n > 0) { while (n > 0) {

@ -60,14 +60,15 @@ grpc_slice_hash_table* grpc_slice_hash_table_create(
size_t num_entries, grpc_slice_hash_table_entry* entries, size_t num_entries, grpc_slice_hash_table_entry* entries,
void (*destroy_value)(grpc_exec_ctx* exec_ctx, void* value), void (*destroy_value)(grpc_exec_ctx* exec_ctx, void* value),
int (*value_cmp)(void* a, void* b)) { int (*value_cmp)(void* a, void* b)) {
grpc_slice_hash_table* table = gpr_zalloc(sizeof(*table)); grpc_slice_hash_table* table =
(grpc_slice_hash_table*)gpr_zalloc(sizeof(*table));
gpr_ref_init(&table->refs, 1); gpr_ref_init(&table->refs, 1);
table->destroy_value = destroy_value; table->destroy_value = destroy_value;
table->value_cmp = value_cmp; table->value_cmp = value_cmp;
// Keep load factor low to improve performance of lookups. // Keep load factor low to improve performance of lookups.
table->size = num_entries * 2; table->size = num_entries * 2;
const size_t entry_size = sizeof(grpc_slice_hash_table_entry) * table->size; const size_t entry_size = sizeof(grpc_slice_hash_table_entry) * table->size;
table->entries = gpr_zalloc(entry_size); table->entries = (grpc_slice_hash_table_entry*)gpr_zalloc(entry_size);
for (size_t i = 0; i < num_entries; ++i) { for (size_t i = 0; i < num_entries; ++i) {
grpc_slice_hash_table_entry* entry = &entries[i]; grpc_slice_hash_table_entry* entry = &entries[i];
grpc_slice_hash_table_add(table, entry->key, entry->value); grpc_slice_hash_table_add(table, entry->key, entry->value);

@ -69,7 +69,7 @@ static uint32_t max_static_metadata_hash_probe;
static uint32_t static_metadata_hash_values[GRPC_STATIC_MDSTR_COUNT]; static uint32_t static_metadata_hash_values[GRPC_STATIC_MDSTR_COUNT];
static void interned_slice_ref(void *p) { static void interned_slice_ref(void *p) {
interned_slice_refcount *s = p; interned_slice_refcount *s = (interned_slice_refcount *)p;
GPR_ASSERT(gpr_atm_no_barrier_fetch_add(&s->refcnt, 1) > 0); GPR_ASSERT(gpr_atm_no_barrier_fetch_add(&s->refcnt, 1) > 0);
} }
@ -90,7 +90,7 @@ static void interned_slice_destroy(interned_slice_refcount *s) {
} }
static void interned_slice_unref(grpc_exec_ctx *exec_ctx, void *p) { static void interned_slice_unref(grpc_exec_ctx *exec_ctx, void *p) {
interned_slice_refcount *s = p; interned_slice_refcount *s = (interned_slice_refcount *)p;
if (1 == gpr_atm_full_fetch_add(&s->refcnt, -1)) { if (1 == gpr_atm_full_fetch_add(&s->refcnt, -1)) {
interned_slice_destroy(s); interned_slice_destroy(s);
} }
@ -129,7 +129,8 @@ static void grow_shard(slice_shard *shard) {
GPR_TIMER_BEGIN("grow_strtab", 0); GPR_TIMER_BEGIN("grow_strtab", 0);
strtab = gpr_zalloc(sizeof(interned_slice_refcount *) * capacity); strtab = (interned_slice_refcount **)gpr_zalloc(
sizeof(interned_slice_refcount *) * capacity);
for (i = 0; i < shard->capacity; i++) { for (i = 0; i < shard->capacity; i++) {
for (s = shard->strs[i]; s; s = next) { for (s = shard->strs[i]; s; s = next) {
@ -242,7 +243,8 @@ grpc_slice grpc_slice_intern(grpc_slice slice) {
/* not found: create a new string */ /* not found: create a new string */
/* string data goes after the internal_string header */ /* string data goes after the internal_string header */
s = gpr_malloc(sizeof(*s) + GRPC_SLICE_LENGTH(slice)); s = (interned_slice_refcount *)gpr_malloc(sizeof(*s) +
GRPC_SLICE_LENGTH(slice));
gpr_atm_rel_store(&s->refcnt, 1); gpr_atm_rel_store(&s->refcnt, 1);
s->length = GRPC_SLICE_LENGTH(slice); s->length = GRPC_SLICE_LENGTH(slice);
s->hash = hash; s->hash = hash;
@ -280,7 +282,8 @@ void grpc_slice_intern_init(void) {
gpr_mu_init(&shard->mu); gpr_mu_init(&shard->mu);
shard->count = 0; shard->count = 0;
shard->capacity = INITIAL_SHARD_CAPACITY; shard->capacity = INITIAL_SHARD_CAPACITY;
shard->strs = gpr_zalloc(sizeof(*shard->strs) * shard->capacity); shard->strs = (interned_slice_refcount **)gpr_zalloc(sizeof(*shard->strs) *
shard->capacity);
} }
for (size_t i = 0; i < GPR_ARRAY_SIZE(static_metadata_hash); i++) { for (size_t i = 0; i < GPR_ARRAY_SIZE(static_metadata_hash); i++) {
static_metadata_hash[i].hash = 0; static_metadata_hash[i].hash = 0;

@ -80,12 +80,12 @@ static void alarm_unref_dbg(grpc_alarm *alarm, const char *reason,
static void alarm_end_completion(grpc_exec_ctx *exec_ctx, void *arg, static void alarm_end_completion(grpc_exec_ctx *exec_ctx, void *arg,
grpc_cq_completion *c) { grpc_cq_completion *c) {
grpc_alarm *alarm = arg; grpc_alarm *alarm = (grpc_alarm *)arg;
GRPC_ALARM_UNREF(alarm, "dequeue-end-op"); GRPC_ALARM_UNREF(alarm, "dequeue-end-op");
} }
static void alarm_cb(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) { static void alarm_cb(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
grpc_alarm *alarm = arg; grpc_alarm *alarm = (grpc_alarm *)arg;
/* We are queuing an op on completion queue. This means, the alarm's structure /* We are queuing an op on completion queue. This means, the alarm's structure
cannot be destroyed until the op is dequeued. Adding an extra ref cannot be destroyed until the op is dequeued. Adding an extra ref
@ -96,7 +96,7 @@ static void alarm_cb(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
} }
grpc_alarm *grpc_alarm_create(void *reserved) { grpc_alarm *grpc_alarm_create(void *reserved) {
grpc_alarm *alarm = gpr_malloc(sizeof(grpc_alarm)); grpc_alarm *alarm = (grpc_alarm *)gpr_malloc(sizeof(grpc_alarm));
#ifndef NDEBUG #ifndef NDEBUG
if (GRPC_TRACER_ON(grpc_trace_alarm_refcount)) { if (GRPC_TRACER_ON(grpc_trace_alarm_refcount)) {

@ -32,7 +32,8 @@ grpc_byte_buffer *grpc_raw_compressed_byte_buffer_create(
grpc_slice *slices, size_t nslices, grpc_slice *slices, size_t nslices,
grpc_compression_algorithm compression) { grpc_compression_algorithm compression) {
size_t i; size_t i;
grpc_byte_buffer *bb = gpr_malloc(sizeof(grpc_byte_buffer)); grpc_byte_buffer *bb =
(grpc_byte_buffer *)gpr_malloc(sizeof(grpc_byte_buffer));
bb->type = GRPC_BB_RAW; bb->type = GRPC_BB_RAW;
bb->data.raw.compression = compression; bb->data.raw.compression = compression;
grpc_slice_buffer_init(&bb->data.raw.slice_buffer); grpc_slice_buffer_init(&bb->data.raw.slice_buffer);
@ -45,7 +46,8 @@ grpc_byte_buffer *grpc_raw_compressed_byte_buffer_create(
grpc_byte_buffer *grpc_raw_byte_buffer_from_reader( grpc_byte_buffer *grpc_raw_byte_buffer_from_reader(
grpc_byte_buffer_reader *reader) { grpc_byte_buffer_reader *reader) {
grpc_byte_buffer *bb = gpr_malloc(sizeof(grpc_byte_buffer)); grpc_byte_buffer *bb =
(grpc_byte_buffer *)gpr_malloc(sizeof(grpc_byte_buffer));
grpc_slice slice; grpc_slice slice;
bb->type = GRPC_BB_RAW; bb->type = GRPC_BB_RAW;
bb->data.raw.compression = GRPC_COMPRESS_NONE; bb->data.raw.compression = GRPC_COMPRESS_NONE;

@ -307,7 +307,7 @@ void *grpc_call_arena_alloc(grpc_call *call, size_t size) {
static parent_call *get_or_create_parent_call(grpc_call *call) { static parent_call *get_or_create_parent_call(grpc_call *call) {
parent_call *p = (parent_call *)gpr_atm_acq_load(&call->parent_call_atm); parent_call *p = (parent_call *)gpr_atm_acq_load(&call->parent_call_atm);
if (p == NULL) { if (p == NULL) {
p = gpr_arena_alloc(call->arena, sizeof(*p)); p = (parent_call *)gpr_arena_alloc(call->arena, sizeof(*p));
gpr_mu_init(&p->child_list_mu); gpr_mu_init(&p->child_list_mu);
if (!gpr_atm_rel_cas(&call->parent_call_atm, (gpr_atm)NULL, (gpr_atm)p)) { if (!gpr_atm_rel_cas(&call->parent_call_atm, (gpr_atm)NULL, (gpr_atm)p)) {
gpr_mu_destroy(&p->child_list_mu); gpr_mu_destroy(&p->child_list_mu);
@ -332,8 +332,8 @@ grpc_error *grpc_call_create(grpc_exec_ctx *exec_ctx,
GPR_TIMER_BEGIN("grpc_call_create", 0); GPR_TIMER_BEGIN("grpc_call_create", 0);
gpr_arena *arena = gpr_arena *arena =
gpr_arena_create(grpc_channel_get_call_size_estimate(args->channel)); gpr_arena_create(grpc_channel_get_call_size_estimate(args->channel));
call = gpr_arena_alloc(arena, call = (grpc_call *)gpr_arena_alloc(
sizeof(grpc_call) + channel_stack->call_stack_size); arena, sizeof(grpc_call) + channel_stack->call_stack_size);
gpr_ref_init(&call->ext_ref, 1); gpr_ref_init(&call->ext_ref, 1);
call->arena = arena; call->arena = arena;
grpc_call_combiner_init(&call->call_combiner); grpc_call_combiner_init(&call->call_combiner);
@ -511,7 +511,7 @@ void grpc_call_internal_unref(grpc_exec_ctx *exec_ctx, grpc_call *c REF_ARG) {
static void release_call(grpc_exec_ctx *exec_ctx, void *call, static void release_call(grpc_exec_ctx *exec_ctx, void *call,
grpc_error *error) { grpc_error *error) {
grpc_call *c = call; grpc_call *c = (grpc_call *)call;
grpc_channel *channel = c->channel; grpc_channel *channel = c->channel;
grpc_call_combiner_destroy(&c->call_combiner); grpc_call_combiner_destroy(&c->call_combiner);
gpr_free((char *)c->peer_string); gpr_free((char *)c->peer_string);
@ -524,7 +524,7 @@ static void destroy_call(grpc_exec_ctx *exec_ctx, void *call,
grpc_error *error) { grpc_error *error) {
size_t i; size_t i;
int ii; int ii;
grpc_call *c = call; grpc_call *c = (grpc_call *)call;
GPR_TIMER_BEGIN("destroy_call", 0); GPR_TIMER_BEGIN("destroy_call", 0);
for (i = 0; i < 2; i++) { for (i = 0; i < 2; i++) {
grpc_metadata_batch_destroy( grpc_metadata_batch_destroy(
@ -624,8 +624,8 @@ grpc_call_error grpc_call_cancel(grpc_call *call, void *reserved) {
// the filter stack. // the filter stack.
static void execute_batch_in_call_combiner(grpc_exec_ctx *exec_ctx, void *arg, static void execute_batch_in_call_combiner(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *ignored) { grpc_error *ignored) {
grpc_transport_stream_op_batch *batch = arg; grpc_transport_stream_op_batch *batch = (grpc_transport_stream_op_batch *)arg;
grpc_call *call = batch->handler_private.extra_arg; grpc_call *call = (grpc_call *)batch->handler_private.extra_arg;
GPR_TIMER_BEGIN("execute_batch", 0); GPR_TIMER_BEGIN("execute_batch", 0);
grpc_call_element *elem = CALL_ELEM_FROM_CALL(call, 0); grpc_call_element *elem = CALL_ELEM_FROM_CALL(call, 0);
GRPC_CALL_LOG_OP(GPR_INFO, elem, batch); GRPC_CALL_LOG_OP(GPR_INFO, elem, batch);
@ -1105,8 +1105,8 @@ static void publish_app_metadata(grpc_call *call, grpc_metadata_batch *b,
if (dest->count + b->list.count > dest->capacity) { if (dest->count + b->list.count > dest->capacity) {
dest->capacity = dest->capacity =
GPR_MAX(dest->capacity + b->list.count, dest->capacity * 3 / 2); GPR_MAX(dest->capacity + b->list.count, dest->capacity * 3 / 2);
dest->metadata = dest->metadata = (grpc_metadata *)gpr_realloc(
gpr_realloc(dest->metadata, sizeof(grpc_metadata) * dest->capacity); dest->metadata, sizeof(grpc_metadata) * dest->capacity);
} }
for (grpc_linked_mdelem *l = b->list.head; l != NULL; l = l->next) { for (grpc_linked_mdelem *l = b->list.head; l != NULL; l = l->next) {
mdusr = &dest->metadata[dest->count++]; mdusr = &dest->metadata[dest->count++];
@ -1157,7 +1157,7 @@ static void recv_initial_filter(grpc_exec_ctx *exec_ctx, grpc_call *call,
static void recv_trailing_filter(grpc_exec_ctx *exec_ctx, void *args, static void recv_trailing_filter(grpc_exec_ctx *exec_ctx, void *args,
grpc_metadata_batch *b) { grpc_metadata_batch *b) {
grpc_call *call = args; grpc_call *call = (grpc_call *)args;
if (b->idx.named.grpc_status != NULL) { if (b->idx.named.grpc_status != NULL) {
uint32_t status_code = decode_status(b->idx.named.grpc_status->md); uint32_t status_code = decode_status(b->idx.named.grpc_status->md);
grpc_error *error = grpc_error *error =
@ -1241,7 +1241,8 @@ static batch_control *allocate_batch_control(grpc_call *call,
int slot = batch_slot_for_op(ops[0].op); int slot = batch_slot_for_op(ops[0].op);
batch_control **pslot = &call->active_batches[slot]; batch_control **pslot = &call->active_batches[slot];
if (*pslot == NULL) { if (*pslot == NULL) {
*pslot = gpr_arena_alloc(call->arena, sizeof(batch_control)); *pslot =
(batch_control *)gpr_arena_alloc(call->arena, sizeof(batch_control));
} }
batch_control *bctl = *pslot; batch_control *bctl = *pslot;
if (bctl->call != NULL) { if (bctl->call != NULL) {
@ -1255,7 +1256,7 @@ static batch_control *allocate_batch_control(grpc_call *call,
static void finish_batch_completion(grpc_exec_ctx *exec_ctx, void *user_data, static void finish_batch_completion(grpc_exec_ctx *exec_ctx, void *user_data,
grpc_cq_completion *storage) { grpc_cq_completion *storage) {
batch_control *bctl = user_data; batch_control *bctl = (batch_control *)user_data;
grpc_call *call = bctl->call; grpc_call *call = bctl->call;
bctl->call = NULL; bctl->call = NULL;
GRPC_CALL_INTERNAL_UNREF(exec_ctx, call, "completion"); GRPC_CALL_INTERNAL_UNREF(exec_ctx, call, "completion");
@ -1398,7 +1399,7 @@ static void continue_receiving_slices(grpc_exec_ctx *exec_ctx,
static void receiving_slice_ready(grpc_exec_ctx *exec_ctx, void *bctlp, static void receiving_slice_ready(grpc_exec_ctx *exec_ctx, void *bctlp,
grpc_error *error) { grpc_error *error) {
batch_control *bctl = bctlp; batch_control *bctl = (batch_control *)bctlp;
grpc_call *call = bctl->call; grpc_call *call = bctl->call;
grpc_byte_stream *bs = call->receiving_stream; grpc_byte_stream *bs = call->receiving_stream;
bool release_error = false; bool release_error = false;
@ -1457,7 +1458,7 @@ static void process_data_after_md(grpc_exec_ctx *exec_ctx,
static void receiving_stream_ready(grpc_exec_ctx *exec_ctx, void *bctlp, static void receiving_stream_ready(grpc_exec_ctx *exec_ctx, void *bctlp,
grpc_error *error) { grpc_error *error) {
batch_control *bctl = bctlp; batch_control *bctl = (batch_control *)bctlp;
grpc_call *call = bctl->call; grpc_call *call = bctl->call;
if (error != GRPC_ERROR_NONE) { if (error != GRPC_ERROR_NONE) {
if (call->receiving_stream != NULL) { if (call->receiving_stream != NULL) {
@ -1483,7 +1484,7 @@ static void receiving_stream_ready(grpc_exec_ctx *exec_ctx, void *bctlp,
static void receiving_stream_ready_in_call_combiner(grpc_exec_ctx *exec_ctx, static void receiving_stream_ready_in_call_combiner(grpc_exec_ctx *exec_ctx,
void *bctlp, void *bctlp,
grpc_error *error) { grpc_error *error) {
batch_control *bctl = bctlp; batch_control *bctl = (batch_control *)bctlp;
grpc_call *call = bctl->call; grpc_call *call = bctl->call;
GRPC_CALL_COMBINER_STOP(exec_ctx, &call->call_combiner, "recv_message_ready"); GRPC_CALL_COMBINER_STOP(exec_ctx, &call->call_combiner, "recv_message_ready");
receiving_stream_ready(exec_ctx, bctlp, error); receiving_stream_ready(exec_ctx, bctlp, error);
@ -1592,7 +1593,7 @@ static void add_batch_error(grpc_exec_ctx *exec_ctx, batch_control *bctl,
static void receiving_initial_metadata_ready(grpc_exec_ctx *exec_ctx, static void receiving_initial_metadata_ready(grpc_exec_ctx *exec_ctx,
void *bctlp, grpc_error *error) { void *bctlp, grpc_error *error) {
batch_control *bctl = bctlp; batch_control *bctl = (batch_control *)bctlp;
grpc_call *call = bctl->call; grpc_call *call = bctl->call;
GRPC_CALL_COMBINER_STOP(exec_ctx, &call->call_combiner, GRPC_CALL_COMBINER_STOP(exec_ctx, &call->call_combiner,
@ -1650,7 +1651,7 @@ static void receiving_initial_metadata_ready(grpc_exec_ctx *exec_ctx,
static void finish_batch(grpc_exec_ctx *exec_ctx, void *bctlp, static void finish_batch(grpc_exec_ctx *exec_ctx, void *bctlp,
grpc_error *error) { grpc_error *error) {
batch_control *bctl = bctlp; batch_control *bctl = (batch_control *)bctlp;
grpc_call *call = bctl->call; grpc_call *call = bctl->call;
GRPC_CALL_COMBINER_STOP(exec_ctx, &call->call_combiner, "on_complete"); GRPC_CALL_COMBINER_STOP(exec_ctx, &call->call_combiner, "on_complete");
add_batch_error(exec_ctx, bctl, GRPC_ERROR_REF(error), false); add_batch_error(exec_ctx, bctl, GRPC_ERROR_REF(error), false);

@ -327,7 +327,7 @@ grpc_call *grpc_channel_create_pollset_set_call(
void *grpc_channel_register_call(grpc_channel *channel, const char *method, void *grpc_channel_register_call(grpc_channel *channel, const char *method,
const char *host, void *reserved) { const char *host, void *reserved) {
registered_call *rc = gpr_malloc(sizeof(registered_call)); registered_call *rc = (registered_call *)gpr_malloc(sizeof(registered_call));
GRPC_API_TRACE( GRPC_API_TRACE(
"grpc_channel_register_call(channel=%p, method=%s, host=%s, reserved=%p)", "grpc_channel_register_call(channel=%p, method=%s, host=%s, reserved=%p)",
4, (channel, method, host, reserved)); 4, (channel, method, host, reserved));
@ -354,7 +354,7 @@ grpc_call *grpc_channel_create_registered_call(
grpc_channel *channel, grpc_call *parent_call, uint32_t propagation_mask, grpc_channel *channel, grpc_call *parent_call, uint32_t propagation_mask,
grpc_completion_queue *completion_queue, void *registered_call_handle, grpc_completion_queue *completion_queue, void *registered_call_handle,
gpr_timespec deadline, void *reserved) { gpr_timespec deadline, void *reserved) {
registered_call *rc = registered_call_handle; registered_call *rc = (registered_call *)registered_call_handle;
GRPC_API_TRACE( GRPC_API_TRACE(
"grpc_channel_create_registered_call(" "grpc_channel_create_registered_call("
"channel=%p, parent_call=%p, propagation_mask=%x, completion_queue=%p, " "channel=%p, parent_call=%p, propagation_mask=%x, completion_queue=%p, "
@ -392,7 +392,7 @@ void grpc_channel_internal_unref(grpc_exec_ctx *exec_ctx,
static void destroy_channel(grpc_exec_ctx *exec_ctx, void *arg, static void destroy_channel(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_channel *channel = arg; grpc_channel *channel = (grpc_channel *)arg;
grpc_channel_stack_destroy(exec_ctx, CHANNEL_STACK_FROM_CHANNEL(channel)); grpc_channel_stack_destroy(exec_ctx, CHANNEL_STACK_FROM_CHANNEL(channel));
while (channel->registered_calls) { while (channel->registered_calls) {
registered_call *rc = channel->registered_calls; registered_call *rc = channel->registered_calls;

@ -53,9 +53,9 @@ void grpc_channel_init_register_stage(grpc_channel_stack_type type,
GPR_ASSERT(!g_finalized); GPR_ASSERT(!g_finalized);
if (g_slots[type].cap_slots == g_slots[type].num_slots) { if (g_slots[type].cap_slots == g_slots[type].num_slots) {
g_slots[type].cap_slots = GPR_MAX(8, 3 * g_slots[type].cap_slots / 2); g_slots[type].cap_slots = GPR_MAX(8, 3 * g_slots[type].cap_slots / 2);
g_slots[type].slots = g_slots[type].slots = (stage_slot *)gpr_realloc(
gpr_realloc(g_slots[type].slots, g_slots[type].slots,
g_slots[type].cap_slots * sizeof(*g_slots[type].slots)); g_slots[type].cap_slots * sizeof(*g_slots[type].slots));
} }
stage_slot *s = &g_slots[type].slots[g_slots[type].num_slots++]; stage_slot *s = &g_slots[type].slots[g_slots[type].num_slots++];
s->insertion_order = g_slots[type].num_slots; s->insertion_order = g_slots[type].num_slots;
@ -65,8 +65,8 @@ void grpc_channel_init_register_stage(grpc_channel_stack_type type,
} }
static int compare_slots(const void *a, const void *b) { static int compare_slots(const void *a, const void *b) {
const stage_slot *sa = a; const stage_slot *sa = (const stage_slot *)a;
const stage_slot *sb = b; const stage_slot *sb = (const stage_slot *)b;
int c = GPR_ICMP(sa->priority, sb->priority); int c = GPR_ICMP(sa->priority, sb->priority);
if (c != 0) return c; if (c != 0) return c;
@ -85,7 +85,7 @@ void grpc_channel_init_finalize(void) {
void grpc_channel_init_shutdown(void) { void grpc_channel_init_shutdown(void) {
for (int i = 0; i < GRPC_NUM_CHANNEL_STACK_TYPES; i++) { for (int i = 0; i < GRPC_NUM_CHANNEL_STACK_TYPES; i++) {
gpr_free(g_slots[i].slots); gpr_free(g_slots[i].slots);
g_slots[i].slots = (void *)(uintptr_t)0xdeadbeef; g_slots[i].slots = (stage_slot *)(void *)(uintptr_t)0xdeadbeef;
} }
} }

@ -39,7 +39,7 @@ static void ping_destroy(grpc_exec_ctx *exec_ctx, void *arg,
} }
static void ping_done(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) { static void ping_done(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
ping_result *pr = arg; ping_result *pr = (ping_result *)arg;
grpc_cq_end_op(exec_ctx, pr->cq, pr->tag, GRPC_ERROR_REF(error), ping_destroy, grpc_cq_end_op(exec_ctx, pr->cq, pr->tag, GRPC_ERROR_REF(error), ping_destroy,
pr, &pr->completion_storage); pr, &pr->completion_storage);
} }
@ -49,7 +49,7 @@ void grpc_channel_ping(grpc_channel *channel, grpc_completion_queue *cq,
GRPC_API_TRACE("grpc_channel_ping(channel=%p, cq=%p, tag=%p, reserved=%p)", 4, GRPC_API_TRACE("grpc_channel_ping(channel=%p, cq=%p, tag=%p, reserved=%p)", 4,
(channel, cq, tag, reserved)); (channel, cq, tag, reserved));
grpc_transport_op *op = grpc_make_transport_op(NULL); grpc_transport_op *op = grpc_make_transport_op(NULL);
ping_result *pr = gpr_malloc(sizeof(*pr)); ping_result *pr = (ping_result *)gpr_malloc(sizeof(*pr));
grpc_channel_element *top_elem = grpc_channel_element *top_elem =
grpc_channel_stack_element(grpc_channel_get_channel_stack(channel), 0); grpc_channel_stack_element(grpc_channel_get_channel_stack(channel), 0);
grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT; grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;

@ -420,8 +420,9 @@ grpc_completion_queue *grpc_completion_queue_create_internal(
const cq_poller_vtable *poller_vtable = const cq_poller_vtable *poller_vtable =
&g_poller_vtable_by_poller_type[polling_type]; &g_poller_vtable_by_poller_type[polling_type];
cq = gpr_zalloc(sizeof(grpc_completion_queue) + vtable->data_size + cq = (grpc_completion_queue *)gpr_zalloc(sizeof(grpc_completion_queue) +
poller_vtable->size()); vtable->data_size +
poller_vtable->size());
cq->vtable = vtable; cq->vtable = vtable;
cq->poller_vtable = poller_vtable; cq->poller_vtable = poller_vtable;
@ -441,7 +442,7 @@ grpc_completion_queue *grpc_completion_queue_create_internal(
} }
static void cq_init_next(void *ptr) { static void cq_init_next(void *ptr) {
cq_next_data *cqd = ptr; cq_next_data *cqd = (cq_next_data *)ptr;
/* Initial count is dropped by grpc_completion_queue_shutdown */ /* Initial count is dropped by grpc_completion_queue_shutdown */
gpr_atm_no_barrier_store(&cqd->pending_events, 1); gpr_atm_no_barrier_store(&cqd->pending_events, 1);
cqd->shutdown_called = false; cqd->shutdown_called = false;
@ -450,13 +451,13 @@ static void cq_init_next(void *ptr) {
} }
static void cq_destroy_next(void *ptr) { static void cq_destroy_next(void *ptr) {
cq_next_data *cqd = ptr; cq_next_data *cqd = (cq_next_data *)ptr;
GPR_ASSERT(cq_event_queue_num_items(&cqd->queue) == 0); GPR_ASSERT(cq_event_queue_num_items(&cqd->queue) == 0);
cq_event_queue_destroy(&cqd->queue); cq_event_queue_destroy(&cqd->queue);
} }
static void cq_init_pluck(void *ptr) { static void cq_init_pluck(void *ptr) {
cq_pluck_data *cqd = ptr; cq_pluck_data *cqd = (cq_pluck_data *)ptr;
/* Initial count is dropped by grpc_completion_queue_shutdown */ /* Initial count is dropped by grpc_completion_queue_shutdown */
gpr_atm_no_barrier_store(&cqd->pending_events, 1); gpr_atm_no_barrier_store(&cqd->pending_events, 1);
cqd->completed_tail = &cqd->completed_head; cqd->completed_tail = &cqd->completed_head;
@ -468,7 +469,7 @@ static void cq_init_pluck(void *ptr) {
} }
static void cq_destroy_pluck(void *ptr) { static void cq_destroy_pluck(void *ptr) {
cq_pluck_data *cqd = ptr; cq_pluck_data *cqd = (cq_pluck_data *)ptr;
GPR_ASSERT(cqd->completed_head.next == (uintptr_t)&cqd->completed_head); GPR_ASSERT(cqd->completed_head.next == (uintptr_t)&cqd->completed_head);
} }
@ -501,7 +502,7 @@ void grpc_cq_internal_ref(grpc_completion_queue *cq) {
static void on_pollset_shutdown_done(grpc_exec_ctx *exec_ctx, void *arg, static void on_pollset_shutdown_done(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_completion_queue *cq = arg; grpc_completion_queue *cq = (grpc_completion_queue *)arg;
GRPC_CQ_INTERNAL_UNREF(exec_ctx, cq, "pollset_destroy"); GRPC_CQ_INTERNAL_UNREF(exec_ctx, cq, "pollset_destroy");
} }
@ -588,9 +589,9 @@ bool grpc_cq_begin_op(grpc_completion_queue *cq, void *tag) {
gpr_mu_lock(cq->mu); gpr_mu_lock(cq->mu);
if (cq->outstanding_tag_count == cq->outstanding_tag_capacity) { if (cq->outstanding_tag_count == cq->outstanding_tag_capacity) {
cq->outstanding_tag_capacity = GPR_MAX(4, 2 * cq->outstanding_tag_capacity); cq->outstanding_tag_capacity = GPR_MAX(4, 2 * cq->outstanding_tag_capacity);
cq->outstanding_tags = cq->outstanding_tags = (void **)gpr_realloc(
gpr_realloc(cq->outstanding_tags, sizeof(*cq->outstanding_tags) * cq->outstanding_tags,
cq->outstanding_tag_capacity); sizeof(*cq->outstanding_tags) * cq->outstanding_tag_capacity);
} }
cq->outstanding_tags[cq->outstanding_tag_count++] = tag; cq->outstanding_tags[cq->outstanding_tag_count++] = tag;
gpr_mu_unlock(cq->mu); gpr_mu_unlock(cq->mu);
@ -766,7 +767,7 @@ typedef struct {
} cq_is_finished_arg; } cq_is_finished_arg;
static bool cq_is_next_finished(grpc_exec_ctx *exec_ctx, void *arg) { static bool cq_is_next_finished(grpc_exec_ctx *exec_ctx, void *arg) {
cq_is_finished_arg *a = arg; cq_is_finished_arg *a = (cq_is_finished_arg *)arg;
grpc_completion_queue *cq = a->cq; grpc_completion_queue *cq = a->cq;
cq_next_data *cqd = DATA_FROM_CQ(cq); cq_next_data *cqd = DATA_FROM_CQ(cq);
GPR_ASSERT(a->stolen_completion == NULL); GPR_ASSERT(a->stolen_completion == NULL);
@ -1017,7 +1018,7 @@ static void del_plucker(grpc_completion_queue *cq, void *tag,
} }
static bool cq_is_pluck_finished(grpc_exec_ctx *exec_ctx, void *arg) { static bool cq_is_pluck_finished(grpc_exec_ctx *exec_ctx, void *arg) {
cq_is_finished_arg *a = arg; cq_is_finished_arg *a = (cq_is_finished_arg *)arg;
grpc_completion_queue *cq = a->cq; grpc_completion_queue *cq = a->cq;
cq_pluck_data *cqd = DATA_FROM_CQ(cq); cq_pluck_data *cqd = DATA_FROM_CQ(cq);

@ -250,7 +250,8 @@ static void channel_broadcaster_init(grpc_server *s, channel_broadcaster *cb) {
count++; count++;
} }
cb->num_channels = count; cb->num_channels = count;
cb->channels = gpr_malloc(sizeof(*cb->channels) * cb->num_channels); cb->channels =
(grpc_channel **)gpr_malloc(sizeof(*cb->channels) * cb->num_channels);
count = 0; count = 0;
for (c = s->root_channel_data.next; c != &s->root_channel_data; c = c->next) { for (c = s->root_channel_data.next; c != &s->root_channel_data; c = c->next) {
cb->channels[count++] = c->channel; cb->channels[count++] = c->channel;
@ -265,14 +266,15 @@ struct shutdown_cleanup_args {
static void shutdown_cleanup(grpc_exec_ctx *exec_ctx, void *arg, static void shutdown_cleanup(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
struct shutdown_cleanup_args *a = arg; struct shutdown_cleanup_args *a = (struct shutdown_cleanup_args *)arg;
grpc_slice_unref_internal(exec_ctx, a->slice); grpc_slice_unref_internal(exec_ctx, a->slice);
gpr_free(a); gpr_free(a);
} }
static void send_shutdown(grpc_exec_ctx *exec_ctx, grpc_channel *channel, static void send_shutdown(grpc_exec_ctx *exec_ctx, grpc_channel *channel,
bool send_goaway, grpc_error *send_disconnect) { bool send_goaway, grpc_error *send_disconnect) {
struct shutdown_cleanup_args *sc = gpr_malloc(sizeof(*sc)); struct shutdown_cleanup_args *sc =
(struct shutdown_cleanup_args *)gpr_malloc(sizeof(*sc));
GRPC_CLOSURE_INIT(&sc->closure, shutdown_cleanup, sc, GRPC_CLOSURE_INIT(&sc->closure, shutdown_cleanup, sc,
grpc_schedule_on_exec_ctx); grpc_schedule_on_exec_ctx);
grpc_transport_op *op = grpc_make_transport_op(&sc->closure); grpc_transport_op *op = grpc_make_transport_op(&sc->closure);
@ -314,8 +316,8 @@ static void request_matcher_init(request_matcher *rm, size_t entries,
grpc_server *server) { grpc_server *server) {
memset(rm, 0, sizeof(*rm)); memset(rm, 0, sizeof(*rm));
rm->server = server; rm->server = server;
rm->requests_per_cq = rm->requests_per_cq = (gpr_stack_lockfree **)gpr_malloc(
gpr_malloc(sizeof(*rm->requests_per_cq) * server->cq_count); sizeof(*rm->requests_per_cq) * server->cq_count);
for (size_t i = 0; i < server->cq_count; i++) { for (size_t i = 0; i < server->cq_count; i++) {
rm->requests_per_cq[i] = gpr_stack_lockfree_create(entries); rm->requests_per_cq[i] = gpr_stack_lockfree_create(entries);
} }
@ -426,7 +428,7 @@ static void orphan_channel(channel_data *chand) {
static void finish_destroy_channel(grpc_exec_ctx *exec_ctx, void *cd, static void finish_destroy_channel(grpc_exec_ctx *exec_ctx, void *cd,
grpc_error *error) { grpc_error *error) {
channel_data *chand = cd; channel_data *chand = (channel_data *)cd;
grpc_server *server = chand->server; grpc_server *server = chand->server;
GRPC_CHANNEL_INTERNAL_UNREF(exec_ctx, chand->channel, "server"); GRPC_CHANNEL_INTERNAL_UNREF(exec_ctx, chand->channel, "server");
server_unref(exec_ctx, server); server_unref(exec_ctx, server);
@ -459,7 +461,7 @@ static void destroy_channel(grpc_exec_ctx *exec_ctx, channel_data *chand,
static void done_request_event(grpc_exec_ctx *exec_ctx, void *req, static void done_request_event(grpc_exec_ctx *exec_ctx, void *req,
grpc_cq_completion *c) { grpc_cq_completion *c) {
requested_call *rc = req; requested_call *rc = (requested_call *)req;
grpc_server *server = rc->server; grpc_server *server = rc->server;
if (rc >= server->requested_calls_per_cq[rc->cq_idx] && if (rc >= server->requested_calls_per_cq[rc->cq_idx] &&
@ -505,7 +507,7 @@ static void publish_call(grpc_exec_ctx *exec_ctx, grpc_server *server,
grpc_call_element *elem = grpc_call_element *elem =
grpc_call_stack_element(grpc_call_get_call_stack(call), 0); grpc_call_stack_element(grpc_call_get_call_stack(call), 0);
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
server_ref(chand->server); server_ref(chand->server);
grpc_cq_end_op(exec_ctx, calld->cq_new, rc->tag, GRPC_ERROR_NONE, grpc_cq_end_op(exec_ctx, calld->cq_new, rc->tag, GRPC_ERROR_NONE,
done_request_event, rc, &rc->completion); done_request_event, rc, &rc->completion);
@ -513,9 +515,9 @@ static void publish_call(grpc_exec_ctx *exec_ctx, grpc_server *server,
static void publish_new_rpc(grpc_exec_ctx *exec_ctx, void *arg, static void publish_new_rpc(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
grpc_call_element *call_elem = arg; grpc_call_element *call_elem = (grpc_call_element *)arg;
call_data *calld = call_elem->call_data; call_data *calld = (call_data *)call_elem->call_data;
channel_data *chand = call_elem->channel_data; channel_data *chand = (channel_data *)call_elem->channel_data;
request_matcher *rm = calld->request_matcher; request_matcher *rm = calld->request_matcher;
grpc_server *server = rm->server; grpc_server *server = rm->server;
@ -566,7 +568,7 @@ static void finish_start_new_rpc(
grpc_exec_ctx *exec_ctx, grpc_server *server, grpc_call_element *elem, grpc_exec_ctx *exec_ctx, grpc_server *server, grpc_call_element *elem,
request_matcher *rm, request_matcher *rm,
grpc_server_register_method_payload_handling payload_handling) { grpc_server_register_method_payload_handling payload_handling) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (gpr_atm_acq_load(&server->shutdown_flag)) { if (gpr_atm_acq_load(&server->shutdown_flag)) {
gpr_mu_lock(&calld->mu_state); gpr_mu_lock(&calld->mu_state);
@ -599,8 +601,8 @@ static void finish_start_new_rpc(
} }
static void start_new_rpc(grpc_exec_ctx *exec_ctx, grpc_call_element *elem) { static void start_new_rpc(grpc_exec_ctx *exec_ctx, grpc_call_element *elem) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
grpc_server *server = chand->server; grpc_server *server = chand->server;
uint32_t i; uint32_t i;
uint32_t hash; uint32_t hash;
@ -732,8 +734,8 @@ static void maybe_finish_shutdown(grpc_exec_ctx *exec_ctx,
static void server_on_recv_initial_metadata(grpc_exec_ctx *exec_ctx, void *ptr, static void server_on_recv_initial_metadata(grpc_exec_ctx *exec_ctx, void *ptr,
grpc_error *error) { grpc_error *error) {
grpc_call_element *elem = ptr; grpc_call_element *elem = (grpc_call_element *)ptr;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
gpr_timespec op_deadline; gpr_timespec op_deadline;
if (error == GRPC_ERROR_NONE) { if (error == GRPC_ERROR_NONE) {
@ -771,7 +773,7 @@ static void server_on_recv_initial_metadata(grpc_exec_ctx *exec_ctx, void *ptr,
static void server_mutate_op(grpc_call_element *elem, static void server_mutate_op(grpc_call_element *elem,
grpc_transport_stream_op_batch *op) { grpc_transport_stream_op_batch *op) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (op->recv_initial_metadata) { if (op->recv_initial_metadata) {
GPR_ASSERT(op->payload->recv_initial_metadata.recv_flags == NULL); GPR_ASSERT(op->payload->recv_initial_metadata.recv_flags == NULL);
@ -795,8 +797,8 @@ static void server_start_transport_stream_op_batch(
static void got_initial_metadata(grpc_exec_ctx *exec_ctx, void *ptr, static void got_initial_metadata(grpc_exec_ctx *exec_ctx, void *ptr,
grpc_error *error) { grpc_error *error) {
grpc_call_element *elem = ptr; grpc_call_element *elem = (grpc_call_element *)ptr;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
if (error == GRPC_ERROR_NONE) { if (error == GRPC_ERROR_NONE) {
start_new_rpc(exec_ctx, elem); start_new_rpc(exec_ctx, elem);
} else { } else {
@ -822,7 +824,7 @@ static void got_initial_metadata(grpc_exec_ctx *exec_ctx, void *ptr,
static void accept_stream(grpc_exec_ctx *exec_ctx, void *cd, static void accept_stream(grpc_exec_ctx *exec_ctx, void *cd,
grpc_transport *transport, grpc_transport *transport,
const void *transport_server_data) { const void *transport_server_data) {
channel_data *chand = cd; channel_data *chand = (channel_data *)cd;
/* create a call */ /* create a call */
grpc_call_create_args args; grpc_call_create_args args;
memset(&args, 0, sizeof(args)); memset(&args, 0, sizeof(args));
@ -838,7 +840,7 @@ static void accept_stream(grpc_exec_ctx *exec_ctx, void *cd,
GRPC_ERROR_UNREF(error); GRPC_ERROR_UNREF(error);
return; return;
} }
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
grpc_op op; grpc_op op;
memset(&op, 0, sizeof(op)); memset(&op, 0, sizeof(op));
op.op = GRPC_OP_RECV_INITIAL_METADATA; op.op = GRPC_OP_RECV_INITIAL_METADATA;
@ -852,7 +854,7 @@ static void accept_stream(grpc_exec_ctx *exec_ctx, void *cd,
static void channel_connectivity_changed(grpc_exec_ctx *exec_ctx, void *cd, static void channel_connectivity_changed(grpc_exec_ctx *exec_ctx, void *cd,
grpc_error *error) { grpc_error *error) {
channel_data *chand = cd; channel_data *chand = (channel_data *)cd;
grpc_server *server = chand->server; grpc_server *server = chand->server;
if (chand->connectivity_state != GRPC_CHANNEL_SHUTDOWN) { if (chand->connectivity_state != GRPC_CHANNEL_SHUTDOWN) {
grpc_transport_op *op = grpc_make_transport_op(NULL); grpc_transport_op *op = grpc_make_transport_op(NULL);
@ -873,8 +875,8 @@ static void channel_connectivity_changed(grpc_exec_ctx *exec_ctx, void *cd,
static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx, static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem, grpc_call_element *elem,
const grpc_call_element_args *args) { const grpc_call_element_args *args) {
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
memset(calld, 0, sizeof(call_data)); memset(calld, 0, sizeof(call_data));
calld->deadline = gpr_inf_future(GPR_CLOCK_REALTIME); calld->deadline = gpr_inf_future(GPR_CLOCK_REALTIME);
calld->call = grpc_call_from_top_element(elem); calld->call = grpc_call_from_top_element(elem);
@ -891,8 +893,8 @@ static grpc_error *init_call_elem(grpc_exec_ctx *exec_ctx,
static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem, static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
const grpc_call_final_info *final_info, const grpc_call_final_info *final_info,
grpc_closure *ignored) { grpc_closure *ignored) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
call_data *calld = elem->call_data; call_data *calld = (call_data *)elem->call_data;
GPR_ASSERT(calld->state != PENDING); GPR_ASSERT(calld->state != PENDING);
@ -913,7 +915,7 @@ static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
static grpc_error *init_channel_elem(grpc_exec_ctx *exec_ctx, static grpc_error *init_channel_elem(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem, grpc_channel_element *elem,
grpc_channel_element_args *args) { grpc_channel_element_args *args) {
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
GPR_ASSERT(args->is_first); GPR_ASSERT(args->is_first);
GPR_ASSERT(!args->is_last); GPR_ASSERT(!args->is_last);
chand->server = NULL; chand->server = NULL;
@ -930,7 +932,7 @@ static grpc_error *init_channel_elem(grpc_exec_ctx *exec_ctx,
static void destroy_channel_elem(grpc_exec_ctx *exec_ctx, static void destroy_channel_elem(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem) { grpc_channel_element *elem) {
size_t i; size_t i;
channel_data *chand = elem->channel_data; channel_data *chand = (channel_data *)elem->channel_data;
if (chand->registered_methods) { if (chand->registered_methods) {
for (i = 0; i < chand->registered_method_slots; i++) { for (i = 0; i < chand->registered_method_slots; i++) {
grpc_slice_unref_internal(exec_ctx, chand->registered_methods[i].method); grpc_slice_unref_internal(exec_ctx, chand->registered_methods[i].method);
@ -976,8 +978,8 @@ static void register_completion_queue(grpc_server *server,
GRPC_CQ_INTERNAL_REF(cq, "server"); GRPC_CQ_INTERNAL_REF(cq, "server");
n = server->cq_count++; n = server->cq_count++;
server->cqs = gpr_realloc(server->cqs, server->cqs = (grpc_completion_queue **)gpr_realloc(
server->cq_count * sizeof(grpc_completion_queue *)); server->cqs, server->cq_count * sizeof(grpc_completion_queue *));
server->cqs[n] = cq; server->cqs[n] = cq;
} }
@ -1002,7 +1004,7 @@ void grpc_server_register_completion_queue(grpc_server *server,
grpc_server *grpc_server_create(const grpc_channel_args *args, void *reserved) { grpc_server *grpc_server_create(const grpc_channel_args *args, void *reserved) {
GRPC_API_TRACE("grpc_server_create(%p, %p)", 2, (args, reserved)); GRPC_API_TRACE("grpc_server_create(%p, %p)", 2, (args, reserved));
grpc_server *server = gpr_zalloc(sizeof(grpc_server)); grpc_server *server = (grpc_server *)gpr_zalloc(sizeof(grpc_server));
gpr_mu_init(&server->mu_global); gpr_mu_init(&server->mu_global);
gpr_mu_init(&server->mu_call); gpr_mu_init(&server->mu_call);
@ -1053,7 +1055,7 @@ void *grpc_server_register_method(
flags); flags);
return NULL; return NULL;
} }
m = gpr_zalloc(sizeof(registered_method)); m = (registered_method *)gpr_zalloc(sizeof(registered_method));
m->method = gpr_strdup(method); m->method = gpr_strdup(method);
m->host = gpr_strdup(host); m->host = gpr_strdup(host);
m->next = server->registered_methods; m->next = server->registered_methods;
@ -1065,7 +1067,7 @@ void *grpc_server_register_method(
static void start_listeners(grpc_exec_ctx *exec_ctx, void *s, static void start_listeners(grpc_exec_ctx *exec_ctx, void *s,
grpc_error *error) { grpc_error *error) {
grpc_server *server = s; grpc_server *server = (grpc_server *)s;
for (listener *l = server->listeners; l; l = l->next) { for (listener *l = server->listeners; l; l = l->next) {
l->start(exec_ctx, server, l->arg, server->pollsets, server->pollset_count); l->start(exec_ctx, server, l->arg, server->pollsets, server->pollset_count);
} }
@ -1086,11 +1088,12 @@ void grpc_server_start(grpc_server *server) {
server->started = true; server->started = true;
server->pollset_count = 0; server->pollset_count = 0;
server->pollsets = gpr_malloc(sizeof(grpc_pollset *) * server->cq_count); server->pollsets =
server->request_freelist_per_cq = (grpc_pollset **)gpr_malloc(sizeof(grpc_pollset *) * server->cq_count);
gpr_malloc(sizeof(*server->request_freelist_per_cq) * server->cq_count); server->request_freelist_per_cq = (gpr_stack_lockfree **)gpr_malloc(
server->requested_calls_per_cq = sizeof(*server->request_freelist_per_cq) * server->cq_count);
gpr_malloc(sizeof(*server->requested_calls_per_cq) * server->cq_count); server->requested_calls_per_cq = (requested_call **)gpr_malloc(
sizeof(*server->requested_calls_per_cq) * server->cq_count);
for (i = 0; i < server->cq_count; i++) { for (i = 0; i < server->cq_count; i++) {
if (grpc_cq_can_listen(server->cqs[i])) { if (grpc_cq_can_listen(server->cqs[i])) {
server->pollsets[server->pollset_count++] = server->pollsets[server->pollset_count++] =
@ -1101,9 +1104,9 @@ void grpc_server_start(grpc_server *server) {
for (int j = 0; j < server->max_requested_calls_per_cq; j++) { for (int j = 0; j < server->max_requested_calls_per_cq; j++) {
gpr_stack_lockfree_push(server->request_freelist_per_cq[i], j); gpr_stack_lockfree_push(server->request_freelist_per_cq[i], j);
} }
server->requested_calls_per_cq[i] = server->requested_calls_per_cq[i] = (requested_call *)gpr_malloc(
gpr_malloc((size_t)server->max_requested_calls_per_cq * (size_t)server->max_requested_calls_per_cq *
sizeof(*server->requested_calls_per_cq[i])); sizeof(*server->requested_calls_per_cq[i]));
} }
request_matcher_init(&server->unregistered_request_matcher, request_matcher_init(&server->unregistered_request_matcher,
(size_t)server->max_requested_calls_per_cq, server); (size_t)server->max_requested_calls_per_cq, server);
@ -1171,7 +1174,7 @@ void grpc_server_setup_transport(grpc_exec_ctx *exec_ctx, grpc_server *s,
if (num_registered_methods > 0) { if (num_registered_methods > 0) {
slots = 2 * num_registered_methods; slots = 2 * num_registered_methods;
alloc = sizeof(channel_registered_method) * slots; alloc = sizeof(channel_registered_method) * slots;
chand->registered_methods = gpr_zalloc(alloc); chand->registered_methods = (channel_registered_method *)gpr_zalloc(alloc);
for (rm = s->registered_methods; rm; rm = rm->next) { for (rm = s->registered_methods; rm; rm = rm->next) {
grpc_slice host; grpc_slice host;
bool has_host; bool has_host;
@ -1232,7 +1235,7 @@ void done_published_shutdown(grpc_exec_ctx *exec_ctx, void *done_arg,
static void listener_destroy_done(grpc_exec_ctx *exec_ctx, void *s, static void listener_destroy_done(grpc_exec_ctx *exec_ctx, void *s,
grpc_error *error) { grpc_error *error) {
grpc_server *server = s; grpc_server *server = (grpc_server *)s;
gpr_mu_lock(&server->mu_global); gpr_mu_lock(&server->mu_global);
server->listeners_destroyed++; server->listeners_destroyed++;
maybe_finish_shutdown(exec_ctx, server); maybe_finish_shutdown(exec_ctx, server);
@ -1264,9 +1267,9 @@ void grpc_server_shutdown_and_notify(grpc_server *server,
gpr_mu_unlock(&server->mu_global); gpr_mu_unlock(&server->mu_global);
goto done; goto done;
} }
server->shutdown_tags = server->shutdown_tags = (shutdown_tag *)gpr_realloc(
gpr_realloc(server->shutdown_tags, server->shutdown_tags,
sizeof(shutdown_tag) * (server->num_shutdown_tags + 1)); sizeof(shutdown_tag) * (server->num_shutdown_tags + 1));
sdt = &server->shutdown_tags[server->num_shutdown_tags++]; sdt = &server->shutdown_tags[server->num_shutdown_tags++];
sdt->tag = tag; sdt->tag = tag;
sdt->cq = cq; sdt->cq = cq;
@ -1349,7 +1352,7 @@ void grpc_server_add_listener(
grpc_pollset **pollsets, size_t pollset_count), grpc_pollset **pollsets, size_t pollset_count),
void (*destroy)(grpc_exec_ctx *exec_ctx, grpc_server *server, void *arg, void (*destroy)(grpc_exec_ctx *exec_ctx, grpc_server *server, void *arg,
grpc_closure *on_done)) { grpc_closure *on_done)) {
listener *l = gpr_malloc(sizeof(listener)); listener *l = (listener *)gpr_malloc(sizeof(listener));
l->arg = arg; l->arg = arg;
l->start = start; l->start = start;
l->destroy = destroy; l->destroy = destroy;
@ -1426,7 +1429,7 @@ grpc_call_error grpc_server_request_call(
grpc_completion_queue *cq_for_notification, void *tag) { grpc_completion_queue *cq_for_notification, void *tag) {
grpc_call_error error; grpc_call_error error;
grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT; grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
requested_call *rc = gpr_malloc(sizeof(*rc)); requested_call *rc = (requested_call *)gpr_malloc(sizeof(*rc));
GRPC_API_TRACE( GRPC_API_TRACE(
"grpc_server_request_call(" "grpc_server_request_call("
"server=%p, call=%p, details=%p, initial_metadata=%p, " "server=%p, call=%p, details=%p, initial_metadata=%p, "
@ -1471,8 +1474,8 @@ grpc_call_error grpc_server_request_registered_call(
grpc_completion_queue *cq_for_notification, void *tag) { grpc_completion_queue *cq_for_notification, void *tag) {
grpc_call_error error; grpc_call_error error;
grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT; grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
requested_call *rc = gpr_malloc(sizeof(*rc)); requested_call *rc = (requested_call *)gpr_malloc(sizeof(*rc));
registered_method *rm = rmp; registered_method *rm = (registered_method *)rmp;
GRPC_API_TRACE( GRPC_API_TRACE(
"grpc_server_request_registered_call(" "grpc_server_request_registered_call("
"server=%p, rmp=%p, call=%p, deadline=%p, initial_metadata=%p, " "server=%p, rmp=%p, call=%p, deadline=%p, initial_metadata=%p, "

@ -148,7 +148,8 @@ bool grpc_connectivity_state_notify_on_state_change(
GRPC_CLOSURE_SCHED(exec_ctx, notify, GRPC_CLOSURE_SCHED(exec_ctx, notify,
GRPC_ERROR_REF(tracker->current_error)); GRPC_ERROR_REF(tracker->current_error));
} else { } else {
grpc_connectivity_state_watcher *w = gpr_malloc(sizeof(*w)); grpc_connectivity_state_watcher *w =
(grpc_connectivity_state_watcher *)gpr_malloc(sizeof(*w));
w->current = current; w->current = current;
w->notify = notify; w->notify = notify;
w->next = tracker->watchers; w->next = tracker->watchers;

@ -117,7 +117,8 @@ void grpc_mdctx_global_init(void) {
shard->count = 0; shard->count = 0;
gpr_atm_no_barrier_store(&shard->free_estimate, 0); gpr_atm_no_barrier_store(&shard->free_estimate, 0);
shard->capacity = INITIAL_SHARD_CAPACITY; shard->capacity = INITIAL_SHARD_CAPACITY;
shard->elems = gpr_zalloc(sizeof(*shard->elems) * shard->capacity); shard->elems = (interned_metadata **)gpr_zalloc(sizeof(*shard->elems) *
shard->capacity);
} }
} }
@ -204,7 +205,8 @@ static void grow_mdtab(mdtab_shard *shard) {
GPR_TIMER_BEGIN("grow_mdtab", 0); GPR_TIMER_BEGIN("grow_mdtab", 0);
mdtab = gpr_zalloc(sizeof(interned_metadata *) * capacity); mdtab =
(interned_metadata **)gpr_zalloc(sizeof(interned_metadata *) * capacity);
for (i = 0; i < shard->capacity; i++) { for (i = 0; i < shard->capacity; i++) {
for (md = shard->elems[i]; md; md = next) { for (md = shard->elems[i]; md; md = next) {
@ -243,7 +245,8 @@ grpc_mdelem grpc_mdelem_create(
GRPC_MDELEM_STORAGE_EXTERNAL); GRPC_MDELEM_STORAGE_EXTERNAL);
} }
allocated_metadata *allocated = gpr_malloc(sizeof(*allocated)); allocated_metadata *allocated =
(allocated_metadata *)gpr_malloc(sizeof(*allocated));
allocated->key = grpc_slice_ref_internal(key); allocated->key = grpc_slice_ref_internal(key);
allocated->value = grpc_slice_ref_internal(value); allocated->value = grpc_slice_ref_internal(value);
gpr_atm_rel_store(&allocated->refcnt, 1); gpr_atm_rel_store(&allocated->refcnt, 1);
@ -292,7 +295,7 @@ grpc_mdelem grpc_mdelem_create(
} }
/* not found: create a new pair */ /* not found: create a new pair */
md = gpr_malloc(sizeof(interned_metadata)); md = (interned_metadata *)gpr_malloc(sizeof(interned_metadata));
gpr_atm_rel_store(&md->refcnt, 1); gpr_atm_rel_store(&md->refcnt, 1);
md->key = grpc_slice_ref_internal(key); md->key = grpc_slice_ref_internal(key);
md->value = grpc_slice_ref_internal(value); md->value = grpc_slice_ref_internal(value);

@ -59,7 +59,8 @@ struct grpc_service_config {
}; };
grpc_service_config* grpc_service_config_create(const char* json_string) { grpc_service_config* grpc_service_config_create(const char* json_string) {
grpc_service_config* service_config = gpr_malloc(sizeof(*service_config)); grpc_service_config* service_config =
(grpc_service_config*)gpr_malloc(sizeof(*service_config));
service_config->json_string = gpr_strdup(json_string); service_config->json_string = gpr_strdup(json_string);
service_config->json_tree = service_config->json_tree =
grpc_json_parse_string(service_config->json_string); grpc_json_parse_string(service_config->json_string);
@ -198,7 +199,8 @@ grpc_slice_hash_table* grpc_service_config_create_method_config_table(
num_entries += count_names_in_method_config_json(method); num_entries += count_names_in_method_config_json(method);
} }
// Populate method config table entries. // Populate method config table entries.
entries = gpr_malloc(num_entries * sizeof(grpc_slice_hash_table_entry)); entries = (grpc_slice_hash_table_entry*)gpr_malloc(
num_entries * sizeof(grpc_slice_hash_table_entry));
size_t idx = 0; size_t idx = 0;
for (grpc_json* method = field->child; method != NULL; for (grpc_json* method = field->child; method != NULL;
method = method->next) { method = method->next) {
@ -230,7 +232,7 @@ void* grpc_method_config_table_get(grpc_exec_ctx* exec_ctx,
char* path_str = grpc_slice_to_c_string(path); char* path_str = grpc_slice_to_c_string(path);
const char* sep = strrchr(path_str, '/') + 1; const char* sep = strrchr(path_str, '/') + 1;
const size_t len = (size_t)(sep - path_str); const size_t len = (size_t)(sep - path_str);
char* buf = gpr_malloc(len + 2); // '*' and NUL char* buf = (char*)gpr_malloc(len + 2); // '*' and NUL
memcpy(buf, path_str, len); memcpy(buf, path_str, len);
buf[len] = '*'; buf[len] = '*';
buf[len + 1] = '\0'; buf[len + 1] = '\0';

@ -242,13 +242,13 @@ typedef struct {
static void destroy_made_transport_op(grpc_exec_ctx *exec_ctx, void *arg, static void destroy_made_transport_op(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
made_transport_op *op = arg; made_transport_op *op = (made_transport_op *)arg;
GRPC_CLOSURE_SCHED(exec_ctx, op->inner_on_complete, GRPC_ERROR_REF(error)); GRPC_CLOSURE_SCHED(exec_ctx, op->inner_on_complete, GRPC_ERROR_REF(error));
gpr_free(op); gpr_free(op);
} }
grpc_transport_op *grpc_make_transport_op(grpc_closure *on_complete) { grpc_transport_op *grpc_make_transport_op(grpc_closure *on_complete) {
made_transport_op *op = gpr_malloc(sizeof(*op)); made_transport_op *op = (made_transport_op *)gpr_malloc(sizeof(*op));
GRPC_CLOSURE_INIT(&op->outer_on_complete, destroy_made_transport_op, op, GRPC_CLOSURE_INIT(&op->outer_on_complete, destroy_made_transport_op, op,
grpc_schedule_on_exec_ctx); grpc_schedule_on_exec_ctx);
op->inner_on_complete = on_complete; op->inner_on_complete = on_complete;
@ -266,7 +266,7 @@ typedef struct {
static void destroy_made_transport_stream_op(grpc_exec_ctx *exec_ctx, void *arg, static void destroy_made_transport_stream_op(grpc_exec_ctx *exec_ctx, void *arg,
grpc_error *error) { grpc_error *error) {
made_transport_stream_op *op = arg; made_transport_stream_op *op = (made_transport_stream_op *)arg;
grpc_closure *c = op->inner_on_complete; grpc_closure *c = op->inner_on_complete;
gpr_free(op); gpr_free(op);
GRPC_CLOSURE_RUN(exec_ctx, c, GRPC_ERROR_REF(error)); GRPC_CLOSURE_RUN(exec_ctx, c, GRPC_ERROR_REF(error));
@ -274,7 +274,8 @@ static void destroy_made_transport_stream_op(grpc_exec_ctx *exec_ctx, void *arg,
grpc_transport_stream_op_batch *grpc_make_transport_stream_op( grpc_transport_stream_op_batch *grpc_make_transport_stream_op(
grpc_closure *on_complete) { grpc_closure *on_complete) {
made_transport_stream_op *op = gpr_zalloc(sizeof(*op)); made_transport_stream_op *op =
(made_transport_stream_op *)gpr_zalloc(sizeof(*op));
op->op.payload = &op->payload; op->op.payload = &op->payload;
GRPC_CLOSURE_INIT(&op->outer_on_complete, destroy_made_transport_stream_op, GRPC_CLOSURE_INIT(&op->outer_on_complete, destroy_made_transport_stream_op,
op, grpc_schedule_on_exec_ctx); op, grpc_schedule_on_exec_ctx);

Loading…
Cancel
Save