diff options
Diffstat (limited to 'libglusterfs/src/event.h')
| -rw-r--r-- | libglusterfs/src/event.h | 78 |
1 files changed, 34 insertions, 44 deletions
diff --git a/libglusterfs/src/event.h b/libglusterfs/src/event.h index 19565e5ed..7ed182492 100644 --- a/libglusterfs/src/event.h +++ b/libglusterfs/src/event.h @@ -1,20 +1,11 @@ /* - Copyright (c) 2008-2009 Z RESEARCH, Inc. <http://www.zresearch.com> - This file is part of GlusterFS. - - GlusterFS is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, - or (at your option) any later version. - - GlusterFS is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see - <http://www.gnu.org/licenses/>. + Copyright (c) 2008-2012 Red Hat, Inc. <http://www.redhat.com> + This file is part of GlusterFS. + + This file is licensed to you under your choice of the GNU Lesser + General Public License, version 3 or any later version (LGPLv3 or + later), or the GNU General Public License, version 2 (GPLv2), in all + cases as published by the Free Software Foundation. */ #ifndef _EVENT_H_ @@ -30,52 +21,51 @@ struct event_pool; struct event_ops; struct event_data { - int fd; - int idx; -} __attribute__ ((__packed__)); + int fd; + int idx; +} __attribute__ ((__packed__, __may_alias__)); typedef int (*event_handler_t) (int fd, int idx, void *data, int poll_in, int poll_out, int poll_err); struct event_pool { - struct event_ops *ops; + struct event_ops *ops; - int fd; - int breaker[2]; + int fd; + int breaker[2]; - int count; - struct { - int fd; - int events; - void *data; - event_handler_t handler; - } *reg; + int count; + struct { + int fd; + int events; + void *data; + event_handler_t handler; + } *reg; - int used; - int idx_cache; - int changed; + int used; + int changed; - pthread_mutex_t mutex; - pthread_cond_t cond; + pthread_mutex_t mutex; + pthread_cond_t cond; - void *evcache; - int evcache_size; + void *evcache; + int evcache_size; }; struct event_ops { - struct event_pool * (*new) (int count); + struct event_pool * (*new) (int count); - int (*event_register) (struct event_pool *event_pool, int fd, - event_handler_t handler, - void *data, int poll_in, int poll_out); + int (*event_register) (struct event_pool *event_pool, int fd, + event_handler_t handler, + void *data, int poll_in, int poll_out); - int (*event_select_on) (struct event_pool *event_pool, int fd, int idx, - int poll_in, int poll_out); + int (*event_select_on) (struct event_pool *event_pool, int fd, int idx, + int poll_in, int poll_out); - int (*event_unregister) (struct event_pool *event_pool, int fd, int idx); + int (*event_unregister) (struct event_pool *event_pool, int fd, int idx); - int (*event_dispatch) (struct event_pool *event_pool); + int (*event_dispatch) (struct event_pool *event_pool); }; struct event_pool * event_pool_new (int count); |
