socket: socket event handlers now return void

Problem:
Returning any value from socket event handlers to the event sub-system
doesn't make sense since event sub-system cannot handle socket
sub-system errors.

Solution:
Change return type of all socket event handlers to 'void'

mainline:
> Change-Id: I70dc2c57f12b7ea2fae41120f71aa0d7fe0b2b6f
> Fixes: bz#1651246
> Signed-off-by: Milind Changire <mchangir@redhat.com>
> Reviewed-on: https://review.gluster.org/c/glusterfs/+/22221

Change-Id: I70dc2c57f12b7ea2fae41120f71aa0d7fe0b2b6f
Fixes: bz#1683900
Signed-off-by: Milind Changire <mchangir@redhat.com>
(cherry picked from commit 776ba851c6ee6c265253d44cf1d6e4e3d4a21772)
This commit is contained in:
Milind Changire 2019-02-15 14:20:07 +05:30 committed by Shyamsundar Ranganathan
parent cd6795c5e8
commit 4cb1d6d94a
6 changed files with 25 additions and 27 deletions

View File

@ -102,7 +102,7 @@ cli_rl_process_line(char *line)
state->rl_processing = 0;
}
int
void
cli_rl_stdin(int fd, int idx, int gen, void *data, int poll_out, int poll_in,
int poll_err, char event_thread_died)
{
@ -114,7 +114,7 @@ cli_rl_stdin(int fd, int idx, int gen, void *data, int poll_out, int poll_in,
event_handled(state->ctx->event_pool, fd, idx, gen);
return 0;
return;
}
char *

View File

@ -645,10 +645,9 @@ pre_unlock:
goto out;
if (!handled_error_previously) {
ret = handler(fd, idx, gen, data,
(event->events & (EPOLLIN | EPOLLPRI)),
(event->events & (EPOLLOUT)),
(event->events & (EPOLLERR | EPOLLHUP)), 0);
handler(fd, idx, gen, data, (event->events & (EPOLLIN | EPOLLPRI)),
(event->events & (EPOLLOUT)),
(event->events & (EPOLLERR | EPOLLHUP)), 0);
}
out:
event_slot_unref(event_pool, slot, idx);

View File

@ -35,7 +35,7 @@ event_register_poll(struct event_pool *event_pool, int fd,
event_handler_t handler, void *data, int poll_in,
int poll_out, char notify_poller_death);
static int
static void
__flush_fd(int fd, int idx, int gen, void *data, int poll_in, int poll_out,
int poll_err, char event_thread_died)
{
@ -43,7 +43,7 @@ __flush_fd(int fd, int idx, int gen, void *data, int poll_in, int poll_out,
int ret = -1;
if (!poll_in)
return ret;
return;
do {
ret = sys_read(fd, buf, 64);
@ -55,7 +55,7 @@ __flush_fd(int fd, int idx, int gen, void *data, int poll_in, int poll_out,
}
} while (ret == 64);
return ret;
return;
}
static int
@ -375,10 +375,10 @@ unlock:
pthread_mutex_unlock(&event_pool->mutex);
if (handler)
ret = handler(ufds[i].fd, idx, 0, data,
(ufds[i].revents & (POLLIN | POLLPRI)),
(ufds[i].revents & (POLLOUT)),
(ufds[i].revents & (POLLERR | POLLHUP | POLLNVAL)), 0);
handler(ufds[i].fd, idx, 0, data,
(ufds[i].revents & (POLLIN | POLLPRI)),
(ufds[i].revents & (POLLOUT)),
(ufds[i].revents & (POLLERR | POLLHUP | POLLNVAL)), 0);
return ret;
}

View File

@ -159,12 +159,12 @@ out:
return ret;
}
int
void
poller_destroy_handler(int fd, int idx, int gen, void *data, int poll_out,
int poll_in, int poll_err, char event_thread_exit)
{
struct event_destroy_data *destroy = NULL;
int readfd = -1, ret = -1;
int readfd = -1;
char buf = '\0';
destroy = data;
@ -176,11 +176,10 @@ poller_destroy_handler(int fd, int idx, int gen, void *data, int poll_out,
while (sys_read(readfd, &buf, 1) > 0) {
}
ret = 0;
out:
event_handled(destroy->pool, fd, idx, gen);
return ret;
return;
}
/* This function destroys all the poller threads.

View File

@ -23,9 +23,9 @@ struct event_data {
int gen;
} __attribute__((__packed__, __may_alias__));
typedef int (*event_handler_t)(int fd, int idx, int gen, void *data,
int poll_in, int poll_out, int poll_err,
char event_thread_exit);
typedef void (*event_handler_t)(int fd, int idx, int gen, void *data,
int poll_in, int poll_out, int poll_err,
char event_thread_exit);
#define EVENT_EPOLL_TABLES 1024
#define EVENT_EPOLL_SLOTS 1024

View File

@ -2847,7 +2847,7 @@ socket_complete_connection(rpc_transport_t *this)
}
/* reads rpc_requests during pollin */
static int
static void
socket_event_handler(int fd, int idx, int gen, void *data, int poll_in,
int poll_out, int poll_err, char event_thread_died)
{
@ -2861,7 +2861,7 @@ socket_event_handler(int fd, int idx, int gen, void *data, int poll_in,
if (event_thread_died) {
/* to avoid duplicate notifications, notify only for listener sockets */
return 0;
return;
}
GF_VALIDATE_OR_GOTO("socket", this, out);
@ -2900,7 +2900,7 @@ socket_event_handler(int fd, int idx, int gen, void *data, int poll_in,
if (ret > 0) {
gf_log(this->name, GF_LOG_TRACE,
"(sock:%d) returning to wait on socket", priv->sock);
return 0;
return;
}
} else {
char *sock_type = (priv->is_server ? "Server" : "Client");
@ -2955,10 +2955,10 @@ socket_event_handler(int fd, int idx, int gen, void *data, int poll_in,
}
out:
return ret;
return;
}
static int
static void
socket_server_event_handler(int fd, int idx, int gen, void *data, int poll_in,
int poll_out, int poll_err, char event_thread_died)
{
@ -2987,7 +2987,7 @@ socket_server_event_handler(int fd, int idx, int gen, void *data, int poll_in,
if (event_thread_died) {
rpc_transport_notify(this, RPC_TRANSPORT_EVENT_THREAD_DIED,
(void *)(unsigned long)gen);
return 0;
return;
}
/* NOTE:
@ -3202,7 +3202,7 @@ socket_server_event_handler(int fd, int idx, int gen, void *data, int poll_in,
}
}
out:
return ret;
return;
}
static int