diff options
| author | Milind Changire <mchangir@redhat.com> | 2019-02-15 14:20:07 +0530 | 
|---|---|---|
| committer | Shyamsundar Ranganathan <srangana@redhat.com> | 2019-03-02 11:54:24 +0000 | 
| commit | 4cb1d6d94ac85c5e79171f8989b545ca098b61d9 (patch) | |
| tree | 2d6a178aa17a6785812a5ddec1bd21feac9f810c | |
| parent | cd6795c5e8ebdf23c6fd350d8df49e5b22b09056 (diff) | |
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)
| -rw-r--r-- | cli/src/cli-rl.c | 4 | ||||
| -rw-r--r-- | libglusterfs/src/event-epoll.c | 7 | ||||
| -rw-r--r-- | libglusterfs/src/event-poll.c | 14 | ||||
| -rw-r--r-- | libglusterfs/src/event.c | 7 | ||||
| -rw-r--r-- | libglusterfs/src/glusterfs/gf-event.h | 6 | ||||
| -rw-r--r-- | rpc/rpc-transport/socket/src/socket.c | 14 | 
6 files changed, 25 insertions, 27 deletions
diff --git a/cli/src/cli-rl.c b/cli/src/cli-rl.c index 6255929e6d2..b6f87b189aa 100644 --- a/cli/src/cli-rl.c +++ b/cli/src/cli-rl.c @@ -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 * diff --git a/libglusterfs/src/event-epoll.c b/libglusterfs/src/event-epoll.c index dbf3faf6e6d..0cec47e6050 100644 --- a/libglusterfs/src/event-epoll.c +++ b/libglusterfs/src/event-epoll.c @@ -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); diff --git a/libglusterfs/src/event-poll.c b/libglusterfs/src/event-poll.c index 735ec2e020c..14dc5e3180c 100644 --- a/libglusterfs/src/event-poll.c +++ b/libglusterfs/src/event-poll.c @@ -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;  } diff --git a/libglusterfs/src/event.c b/libglusterfs/src/event.c index d6023133626..527df5106fc 100644 --- a/libglusterfs/src/event.c +++ b/libglusterfs/src/event.c @@ -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. diff --git a/libglusterfs/src/glusterfs/gf-event.h b/libglusterfs/src/glusterfs/gf-event.h index 5d92a2dd285..0305194d712 100644 --- a/libglusterfs/src/glusterfs/gf-event.h +++ b/libglusterfs/src/glusterfs/gf-event.h @@ -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 diff --git a/rpc/rpc-transport/socket/src/socket.c b/rpc/rpc-transport/socket/src/socket.c index 1762e913d27..fa0e0f20901 100644 --- a/rpc/rpc-transport/socket/src/socket.c +++ b/rpc/rpc-transport/socket/src/socket.c @@ -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  | 
