Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gevent
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
gevent
Commits
8f8392d0
Commit
8f8392d0
authored
Nov 03, 2014
by
Denis Bilenko
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
upgrade libev to 4.19
parent
6e4babce
Changes
14
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
771 additions
and
515 deletions
+771
-515
libev/Changes
libev/Changes
+29
-4
libev/LICENSE
libev/LICENSE
+1
-1
libev/Makefile.in
libev/Makefile.in
+201
-126
libev/config.guess
libev/config.guess
+1
-1
libev/config.sub
libev/config.sub
+1
-1
libev/configure
libev/configure
+237
-60
libev/ev.c
libev/ev.c
+118
-24
libev/ev.h
libev/ev.h
+6
-4
libev/ev_epoll.c
libev/ev_epoll.c
+4
-1
libev/ev_kqueue.c
libev/ev_kqueue.c
+1
-1
libev/ev_vars.h
libev/ev_vars.h
+3
-2
libev/ev_win32.c
libev/ev_win32.c
+1
-1
libev/ltmain.sh
libev/ltmain.sh
+1
-1
libev/missing
libev/missing
+167
-288
No files found.
libev/Changes
View file @
8f8392d0
...
...
@@ -11,7 +11,32 @@ TODO: store pid for each signal
TODO: document file descriptor usage per loop
TODO: store loop pid_t and compare isndie signal handler,store 1 for same, 2 for differign pid, clean up in loop_fork
TODO: embed watchers need updating when fd changes
TODO: document portbaility requirements for atomic pointer access
TODO: document portability requirements for atomic pointer access
TODO: possible cb aliasing?
TODO: document requirements for function pointers and calling conventions.
4.19 Thu Sep 25 08:18:25 CEST 2014
- ev.h wasn't valid C++ anymore, which tripped compilers other than
clang, msvc or gcc (analyzed by Raphael 'kena' Poss). Unfortunately,
C++ doesn't support typedefs for function pointers fully, so the affected
declarations have to spell out the types each time.
- when not using autoconf, tighten the check for clock_gettime and related
functionality.
4.18 Fri Sep 5 17:55:26 CEST 2014
- events on files were not always generated properly with the
epoll backend (testcase by Assaf Inbal).
- mark event pipe fd as cloexec after a fork (analyzed by Sami Farin).
- (ecb) support m68k, m88k and sh (patch by Miod Vallat).
- use a reasonable fallback for EV_NSIG instead of erroring out
when we can't detect the signal set size.
- in the absence of autoconf, do not use the clock syscall
on glibc >= 2.17 (avoids the syscall AND -lrt on systems
doing clock_gettime in userspace).
- ensure extern "C" function pointers are used for externally-visible
loop callbacks (not watcher callbacks yet).
- (ecb) work around memory barriers and volatile apparently both being
broken in visual studio 2008 and later (analysed and patch by Nicolas Noble).
4.15 Fri Mar 1 12:04:50 CET 2013
- destroying a non-default loop would stop the global waitpid
...
...
@@ -41,7 +66,7 @@ TODO: document portbaility requirements for atomic pointer access
- include sys/syscall.h instead of plain syscall.h.
- check for io watcher loops in ev_verify, check for the most
common reported usage bug in ev_io_start.
- chose socket vs. WSASocket at compiletime using EV_USE_WSASOCKET.
- cho
o
se socket vs. WSASocket at compiletime using EV_USE_WSASOCKET.
- always use WSASend/WSARecv directly on windows, hoping that this
works in all cases (unlike read/write/send/recv...).
- try to detect signals around a fork faster (test program by
...
...
@@ -50,7 +75,7 @@ TODO: document portbaility requirements for atomic pointer access
- rename ev::embed::set to ev::embed::set_embed to avoid clashing
the watcher base set (loop) method.
- rewrite the async/signal pipe logic to always keep a valid fd, which
simplifies (and hopefuly correctifies :) the race checking
simplifies (and hopeful
l
y correctifies :) the race checking
on fork, at the cost of one extra fd.
- add fat, msdos, jffs2, ramfs, ntfs and btrfs to the list of
inotify-supporting filesystems.
...
...
@@ -252,7 +277,7 @@ TODO: document portbaility requirements for atomic pointer access
- implement ev_suspend and ev_resume.
- new EV_CUSTOM revents flag for use by applications.
- add documentation section about priorities.
- add a glossary to the d
co
umentation.
- add a glossary to the d
oc
umentation.
- extend the ev_fork description slightly.
- optimize a jump out of call_pending.
...
...
libev/LICENSE
View file @
8f8392d0
All files in libev are
Copyright (c)2007,2008,2009,2010,2011,2012 Marc Alexander Lehmann.
Copyright (c)2007,2008,2009,2010,2011,2012
,2013
Marc Alexander Lehmann.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
...
...
libev/Makefile.in
View file @
8f8392d0
This diff is collapsed.
Click to expand it.
libev/config.guess
View file @
8f8392d0
...
...
@@ -8,7 +8,7 @@ timestamp='2008-01-23'
# This file 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
2
of the License, or
# the Free Software Foundation; either version
3
of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
...
...
libev/config.sub
View file @
8f8392d0
...
...
@@ -12,7 +12,7 @@ timestamp='2008-01-16'
#
# This file 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
2
of the License, or
# the Free Software Foundation; either version
3
of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
...
...
libev/configure
View file @
8f8392d0
This diff is collapsed.
Click to expand it.
libev/ev.c
View file @
8f8392d0
This diff is collapsed.
Click to expand it.
libev/ev.h
View file @
8f8392d0
...
...
@@ -205,7 +205,7 @@ struct ev_loop;
/*****************************************************************************/
#define EV_VERSION_MAJOR 4
#define EV_VERSION_MINOR 1
5
#define EV_VERSION_MINOR 1
9
/* eventmask, revents, events... */
enum
{
...
...
@@ -658,8 +658,10 @@ EV_API_DECL void ev_set_timeout_collect_interval (EV_P_ ev_tstamp interval) EV_T
/* advanced stuff for threading etc. support, see docs */
EV_API_DECL
void
ev_set_userdata
(
EV_P_
void
*
data
)
EV_THROW
;
EV_API_DECL
void
*
ev_userdata
(
EV_P
)
EV_THROW
;
EV_API_DECL
void
ev_set_invoke_pending_cb
(
EV_P_
void
(
*
invoke_pending_cb
)(
EV_P
))
EV_THROW
;
EV_API_DECL
void
ev_set_loop_release_cb
(
EV_P_
void
(
*
release
)(
EV_P
),
void
(
*
acquire
)(
EV_P
)
EV_THROW
)
EV_THROW
;
typedef
void
(
*
ev_loop_callback
)(
EV_P
);
EV_API_DECL
void
ev_set_invoke_pending_cb
(
EV_P_
ev_loop_callback
invoke_pending_cb
)
EV_THROW
;
/* C++ doesn't allow the use of the ev_loop_callback typedef here, so we need to spell it out*/
EV_API_DECL
void
ev_set_loop_release_cb
(
EV_P_
void
(
*
release
)(
EV_P
)
EV_THROW
,
void
(
*
acquire
)(
EV_P
)
EV_THROW
)
EV_THROW
;
EV_API_DECL
unsigned
int
ev_pending_count
(
EV_P
)
EV_THROW
;
/* number of pending events, if any */
EV_API_DECL
void
ev_invoke_pending
(
EV_P
);
/* invoke all pending watchers */
...
...
@@ -730,7 +732,7 @@ EV_API_DECL void ev_resume (EV_P) EV_THROW;
#endif
/* stopping (enabling, adding) a watcher does nothing if it is already running */
/* stopping (disabling, deleting) a watcher does nothing unless its already running */
/* stopping (disabling, deleting) a watcher does nothing unless it
'
s already running */
#if EV_PROTOTYPES
/* feeds an event into a watcher as if the event actually occurred */
...
...
libev/ev_epoll.c
View file @
8f8392d0
...
...
@@ -228,7 +228,10 @@ epoll_poll (EV_P_ ev_tstamp timeout)
if
(
anfds
[
fd
].
emask
&
EV_EMASK_EPERM
&&
events
)
fd_event
(
EV_A_
fd
,
events
);
else
epoll_eperms
[
i
]
=
epoll_eperms
[
--
epoll_epermcnt
];
{
epoll_eperms
[
i
]
=
epoll_eperms
[
--
epoll_epermcnt
];
anfds
[
fd
].
emask
=
0
;
}
}
}
...
...
libev/ev_kqueue.c
View file @
8f8392d0
/*
* libev kqueue backend
*
* Copyright (c) 2007,2008,2009,2010,2011,2012 Marc Alexander Lehmann <libev@schmorp.de>
* Copyright (c) 2007,2008,2009,2010,2011,2012
,2013
Marc Alexander Lehmann <libev@schmorp.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modifica-
...
...
libev/ev_vars.h
View file @
8f8392d0
/*
* loop member variable declarations
*
* Copyright (c) 2007,2008,2009,2010,2011,2012 Marc Alexander Lehmann <libev@schmorp.de>
* Copyright (c) 2007,2008,2009,2010,2011,2012
,2013
Marc Alexander Lehmann <libev@schmorp.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modifica-
...
...
@@ -194,9 +194,10 @@ VARx(unsigned int, loop_count) /* total number of loop iterations/blocks */
VARx
(
unsigned
int
,
loop_depth
)
/* #ev_run enters - #ev_run leaves */
VARx
(
void
*
,
userdata
)
/* C++ doesn't support the ev_loop_callback typedef here. stinks. */
VAR
(
release_cb
,
void
(
*
release_cb
)(
EV_P
)
EV_THROW
)
VAR
(
acquire_cb
,
void
(
*
acquire_cb
)(
EV_P
)
EV_THROW
)
VAR
(
invoke_cb
,
void
(
*
invoke_cb
)
(
EV_P
)
)
VAR
(
invoke_cb
,
ev_loop_callback
invoke_cb
)
#endif
#undef VARx
...
...
libev/ev_win32.c
View file @
8f8392d0
...
...
@@ -143,7 +143,7 @@ fail:
#undef pipe
#define pipe(filedes) ev_pipe (filedes)
#define EV_HAVE_EV_TIME 1
ev_tstamp
ev_time
(
void
)
...
...
libev/ltmain.sh
View file @
8f8392d0
...
...
@@ -9,7 +9,7 @@
# GNU Libtool 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
2
of the License, or
# the Free Software Foundation; either version
3
of the License, or
# (at your option) any later version.
#
# As a special exception to the GNU General Public License,
...
...
libev/missing
View file @
8f8392d0
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment