2 ------------------------------------------------------------------------
4 * Revert the change to use /usr/lib64 on 64-bit hosts because it breaks
8 ------------------------------------------------------------------------
10 * Don't allow the user to override essential CFLAGS such as -fpic
11 * Add _BSD_SOURCE to CFLAGS
13 2011-03-24 v1.0.2 r462
14 ------------------------------------------------------------------------
16 * When building on a 64-bit Linux host, install libraries in /usr/lib64.
18 2010-09-18 v1.0.1 r453
19 ------------------------------------------------------------------------
21 * Eliminate an unused assignment in signal_handler() and
22 evfilt_signal_copyout(). Fixes a build failure on Fedora.
25 ------------------------------------------------------------------------
27 * Support older Linux kernels that do not have the EPOLLRDHUP flag.
29 * Add a portable implementation of the EVFILT_TIMER filter.
31 * Add Solaris to the list of supported platforms.
33 * Fixed the 'make rpm' target to work on CentOS 5.
35 * Modified the manpage to remove unimplemented features.
37 2010-08-05 v0.9.3 r309
38 ------------------------------------------------------------------------
40 * Fix a typo in kevent_copyin() that caused EV_RECEIPT to set the
41 data field incorrectly in some cases.
42 (Credit to Julien Blache for discovering and fixing this bug)
44 2010-08-05 v0.9.2 r289
45 ------------------------------------------------------------------------
47 * Fix some build failures on 32-bit platforms related to the debugging
48 codepaths being enabled by default.
50 2010-08-04 v0.9.1 r286
51 ------------------------------------------------------------------------
53 * Prevent dumping of EVFILT_VNODE debugging information to STDOUT.
55 * Fix the 'make clean' target in the testsuite.
58 ------------------------------------------------------------------------
60 * Set kevent.data = 1 for passive sockets that have at least one pending
62 (Credit to Julien Blache for finding and researching this bug)
64 * Fix various compilation errors under Solaris.
65 (Credit to Joakim Johansson for testing and providing patches)
67 * Use the KQUEUE_DEBUG environment variable to turn on debugging output.
70 ------------------------------------------------------------------------
72 * Fix a bug that prevented a knote with the EV_DISPATCH flag from
73 being re-enabled after an event had been triggered.
74 (Credit to Julien Blache for finding and researching this bug)
77 ------------------------------------------------------------------------
79 * Add Debian packaging to the ports/ directory and improve the 'make deb'
82 * Set the library soname version.
84 * Switch from -fPIC to -fpic as the default in CFLAGS.
87 ------------------------------------------------------------------------
89 * Experimental Linux kernel module.
91 * Implement knote modification for signals.
93 * Implement POSIX signal.c
96 ------------------------------------------------------------------------
98 * Prevent namespace pollution by hiding all ELF symbols except for
99 kqueue() and kevent().
101 * Add reference counting to the garbage collection mechanism so that
102 a kqueue object is never destroyed while multiple threads are using
105 * Improve scalability by using red-black trees instead of linked lists.
107 * Refactor the internal API to promote modularity and code reuse.
108 Five methods are added to each filter: create, modify, delete,
109 enable, disable. These replace the copyin() method, which was
112 * Remove the fine-grained locking at the filter level, and replace
113 it with coarse locking inside kevent(). This simplifys the locking
114 implementation and provides a stronger guarantee of reentrancy.
116 * Initial attempt at writing a Linux kernel module. It fails to
117 link because sys_epoll_create() and other event-related syscalls
118 are not available to kernelspace (?). Need to ask LKML for guidance.
120 * Make unit tests threadsafe and created a stresstest which runs
121 the unit tests in parallel.
123 * Use helper functions to reduce the amount of duplicate code in the
127 ------------------------------------------------------------------------
129 * Incomplete and experimental support for Solaris added.
131 * Lots of work on the test suite.
133 * Replace the buggy GC thread with an event-based alternative.
135 * Do not implicitly set EV_CLEAR in the EVFILT_USER filter.
137 * Adjust the eventlist when EV_RECEIPT causes it to be modified.
140 ------------------------------------------------------------------------
142 * The EVFILT_USER filter has been implemented, but needs additional
145 * The EVFILT_PROC filter is partially implemented on Linux, but is
148 * The unit tests have been moved to a separate subdirectory and now
149 function under OpenBSD 4.4 using the native kqueue(2) and kevent(2)
152 * The kqueue_free() function has been removed.
154 * A helper thread performs garbage collection when close(2) is called
155 on the file descriptor returned by kqueue().
157 * All symbols in <sys/event.h> that are not implemented are now
160 * Major internal reorganization of the source tree.
162 * A copy-and-paste error in vnode.c has been fixed.
164 * The pthreads library is now required.
167 ------------------------------------------------------------------------
169 * Implement EVFILT_TIMER on Linux.
171 * Fix another 'make install' problem reported by Mario Schwalbe.
173 * Do not link the test program with the pthreads library.
175 * pkg-config no longer requires linking with -lpthread and -lrt.
178 ------------------------------------------------------------------------
180 * Initial stable release.