marius
9abd0fc49c
Made libkqueue compile on windows again - functionality still broken on this platform
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@473 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-04-13 17:35:34 +00:00
marius
0abf2a781a
Fixed a bug within kevent_copyin_one() causing a knote mutex to be used after releasing the knote
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@472 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-04-13 17:24:19 +00:00
marius
3a1f03e6ae
Added clean initialization and destruction to mutex used within a knote.
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@471 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-04-13 17:23:13 +00:00
marius
0fb0ab9c2b
Test commit as marius@
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@470 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-04-13 01:14:30 +00:00
mheily
e045e4a70c
Fix incorrect "nfds" argument supplied to pselect(2)
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@469 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-04-11 03:17:37 +00:00
mheily
0d4298cce9
Fix conditional that invokes linux_kevent_wait_hires()
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@468 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-04-09 02:55:07 +00:00
mheily
10ec7ad485
Add a test for high-resolution kevent() calls on Linux
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@467 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-04-09 01:24:59 +00:00
mheily
4e607edd42
Support regular files with EVFILT_READ, fixes the dispatch_read test in libdispatch
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@466 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-04-06 02:49:48 +00:00
mheily
844e70a5f2
Disable debugging if KQUEUE_DEBUG is an empty string
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@465 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-04-06 01:51:39 +00:00
mheily
855362d95f
Split socket.c into two separate files: read.c and write.c. This means that EVFILT_READ and EVFILT_WRITE are now completely separate filters.
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@464 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-04-05 22:22:48 +00:00
mheily
2b21880288
Move knote_get_socket_type() into linux/socket.c.
...
Partial support for EVFILT_READ with regular files.
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@463 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-04-05 21:17:21 +00:00
mheily
50bb5cb827
WORKAROUND: signalfd(2) flags are broken on kernels older than Linux 2.6.27
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@458 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-19 14:28:29 +00:00
mheily
c8762ecddb
Fix another 32-bit compilation issue
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@457 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-19 14:11:59 +00:00
jocke
8ce2f93c30
Reverting to using port_getn, but checking nget even in case of error, as events might have been returned. See http://code.google.com/p/gdnsd/source/browse/branches/current/gdnsd/libgdnsd/libev/ev_port.c?spec=svn878&r=878 as well as related links for background...
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@456 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-15 09:30:39 +00:00
jocke
b1ddd1f071
Try using port_get rather than port_getn as we seem to sometime get lost wakeups for user events, there are a few problems reported for port_getn ( http://bugs.opensolaris.org/view_bug.do?bug_id=6268715 , http://mail.opensolaris.org/pipermail/networking-discuss/2009-August/011979.html , ...) - will use this for stress testing and see if it fixes the problem.
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@455 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-15 08:34:57 +00:00
mheily
543ba08bf2
Document a Linux bug
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@454 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-12 17:01:51 +00:00
mheily
6b6ead7801
Move all debugging macros to a single debug.h header to allow them to be reused in other projects
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@452 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-07 04:46:46 +00:00
mheily
311318db25
Fix a build failure on Linux
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@451 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-07 04:24:03 +00:00
jocke
1e3117304f
Remove superfluous newline in debug
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@450 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-03 13:41:32 +00:00
jocke
1bda0408db
Make sure that EV_RECEIPT events also calls kn_modify(), as we may get NOTE_TRIGGER updates there that needs to trigger e.g. timers.
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@449 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-03 07:05:01 +00:00
jocke
adb6951527
Temporarily disable alloc cache, as it is not threadsafe unless each thread has called mem_init(), which is hard to ensure. The problem is that a different thread may call knote_free() which never before called mem_init(), and then we make libdispatch crash in its internals... Will try to stabilize all libdispatch tests before trying to reenable this...
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@448 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-02 16:31:21 +00:00
jocke
2f1fc4353d
Additional debug for port_associate.
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@447 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-02 13:22:39 +00:00
jocke
6f1f8d9c78
Use same formatting for dbg_perror as for the other dbg_xxx functions.
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@446 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-02 13:20:59 +00:00
jocke
46a437e3d7
Properly return number of available from fd on Solaris in evfilt_socket_copyout.
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@445 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-02 10:37:08 +00:00
jocke
0b50f2ac45
Added xcode project for convenience for edit/navigation/etc
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@444 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-03-02 08:47:07 +00:00
jocke
96365c3031
Make sure we don't 'return' non-initialized events when running with KQUEUE_DEBUG by initializing rv properly (it would generate incorrect debug logs if nevents == 0), tuning debug output slightly.
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@443 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-28 14:45:20 +00:00
jocke
e558ed245c
Properly return number of times a timer have been triggered
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@442 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-28 09:26:14 +00:00
jocke
d058d2be8a
Only map in memory enough to keep the possible set of file descriptors (rlim_max for RLIMIT_NOFILE) rather than MAX_INT, drastically decreases the needed amount of VM backing availble (allowing it to run on also swap-impaired machines). This should be correct, as the kq_id refers to an fd and we can't have more fd:s than this.
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@441 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-23 17:11:47 +00:00
jocke
2070c271dd
Honor CC environment variable as the first pick in the compiler list, temporarily commented out the test for it being executable as it doesn't work properly when CC is set due to how finalize() checks for being empty
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@440 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-23 16:48:57 +00:00
mheily
89c42b63e8
Upgrade to makeconf r10.
...
Always use -shared when running the linker (fixes Linux build).
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@439 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-23 01:41:22 +00:00
mheily
2c5f16b717
Emulate spinlocks on win32
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@438 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-23 01:33:55 +00:00
jocke
b073efbd81
Typecast instead of comment out s->st_count for the time being
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@437 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-21 17:54:08 +00:00
jocke
89717f7c0a
Fix Solaris build - use -shared for Solaris ldflags to build shlib for now, comment out usage of st_count as the 32-bit Solaris atomic ops will bail out on the type sig_atomic_t
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@436 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-21 13:28:44 +00:00
mheily
49857606f7
backport "distfile" from pthwq
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@435 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-21 00:06:42 +00:00
mheily
c0f13a4fc9
all Solaris tests work now
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@434 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-20 21:19:48 +00:00
mheily
40a4be4710
effort to fix Solaris timers
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@433 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-20 21:17:42 +00:00
mheily
51bff95606
Fix EVFILT_SIGNAL on Solaris
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@432 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-20 04:49:12 +00:00
mheily
0ee9ff97d9
Bug fixes for Solaris
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@431 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-20 03:26:04 +00:00
mheily
6bcead7f6b
Add extra debug output
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@430 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-20 03:25:22 +00:00
mheily
f303c205aa
Add an additional sanity check
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@429 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-20 03:24:57 +00:00
mheily
3c17c8a2b0
More Solaris improvements
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@428 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-16 03:11:19 +00:00
mheily
ee14f0ff35
partial fix for Solaris SOCKET filter
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@427 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-16 02:58:56 +00:00
mheily
01804b8e77
fix Solaris EVFILT_USER
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@426 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-16 02:52:41 +00:00
mheily
a2b8894d94
add file and line number to kevent_cmp()
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@425 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-15 23:53:04 +00:00
mheily
429d3717b3
Fix compilation issues on Solaris. Unit tests still fail, however
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@424 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-13 17:33:25 +00:00
mheily
f1ce96d5ac
add extra debug output
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@423 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-13 17:33:01 +00:00
mheily
7f594f6539
solaris fixes
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@422 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-13 16:33:08 +00:00
mheily
ac2645f1e2
remove unused parameters to kf_copyout()
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@421 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-13 15:41:26 +00:00
mheily
31fd9f71ab
remove empty stubs for filter initialization
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@420 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-13 15:35:41 +00:00
mheily
a52d49a1e1
Merge solaris/kevent.c into solaris/platform.c, and start refactoring
...
git-svn-id: svn://svn.code.sf.net/p/libkqueue/code/trunk@419 fb4e3144-bc1c-4b72-a658-5bcd248dd7f7
2011-02-13 05:46:14 +00:00