Commit Graph

1744 Commits

Author SHA1 Message Date
Super-User
22d0f94cd2 High: ipc_socket: Signalhandler must be resetted to Default, use only cleanup_sigpipe to return from qb_ipc_dgram_sock_setup.
Some OS like Solaris/Illumos return with ECONNRESET or EPIPE in the case of a disconnecting peer.
Change the return code to ENOTCONN and continue.
2014-08-14 14:53:59 -04:00
David Vossel
1857c82229 Merge pull request #128 from davidvossel/17.1.fixes
High: trie: allow modifying the trie map during the notify callback
2014-08-11 10:33:42 -05:00
David Vossel
5b103cd6e4 High: trie: allow modifying the trie map during the notify callback 2014-07-30 09:58:04 -05:00
David Vossel
e5b8950863 Merge pull request #127 from davidvossel/17.1.fixes
Low: log: return filter type enum to preserve abi compatibilty with corosync
2014-07-23 15:58:08 -05:00
David Vossel
073f927801 Low: log: return filter type enum to preserve abi compatibilty with corosync
This returns abi compatiblity with libqb v0.16.0. There was a subtle
change in behavior caused by reordering the log filter enum in
v0.17.0.
2014-07-23 14:42:27 -05:00
David Vossel
dbf460aac9 Merge pull request #126 from davidvossel/17.1.fixes
build cleanup and thread-safe logging documentation
2014-07-23 13:22:56 -05:00
David Vossel
bd48e8f264 Low: doc: Add better documentation on thread-safe logging 2014-07-23 12:46:41 -05:00
Fabio M. Di Nitto
bafe834cbb Low: build: cleanup autogen warning to not overrride LDFLAGS
Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
2014-07-23 11:43:52 -05:00
Fabio M. Di Nitto
7c7cd04390 Low: build: update .gitignore and make maintainer-clean target
Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
2014-07-23 11:43:42 -05:00
David Vossel
b103e1ae61 Merge pull request #125 from hopkings2008/master
fix invalid option when run 'ipcclient -h'
2014-06-30 08:23:50 -05:00
zouyu
bb70e2770f fix invalid option when run 'ipcclient -h' 2014-06-30 16:36:41 +08:00
David Vossel
01e43ead81 Merge pull request #120 from AnchorCat/shm-connect-cleanup
ipc_shm: fix error handling in qb_ipcs_shm_connect()
2014-06-19 14:41:46 -05:00
David Vossel
80fd68c263 Merge pull request #121 from AnchorCat/epoll
epoll: don't miss poll events under high load
2014-06-19 14:33:59 -05:00
David Vossel
ac7a7ed699 Merge pull request #122 from AnchorCat/ringbuffer
Fix a couple of bugs in the ringbuffer code
2014-06-19 14:15:39 -05:00
Michael Chapman
2a06ffecde epoll: don't miss poll events under high load
If multiple epoll sources generate events simultaneously, it is possible
for more jobs to be added to particular priority level than will be
handled in one go by qb_loop_run_level(). If one of these epoll sources
gains a new event (say, by switching from "readable" to "readable and
writeable"), then this new event would be missed.

To fix this, merge new epoll events into revents regardless of whether
the job is on the joblist. When the job is dispatched, revents will be
cleared, or the epoll source will be deleted entirely.
2014-06-05 15:25:26 +10:00
Michael Chapman
0cdda23d1e ipc_shm: fix error handling in qb_ipcs_shm_connect()
The request and response SHM segments were being closed under the wrong
labels, and the event SHM segment wasn't being cleaned up at all.
2014-06-05 15:14:11 +10:00
Michael Chapman
fad9ce01a0 ringbuffer: fix size in qb_rb_create_from_file()
qb_rb_open() expects the size field to represent the maximum chunk size.
It adds QB_RB_CHUNK_MARGIN + 1 and rounds up to the page size to
determine the ringbuffer's total size. When creating a ringbuffer from a
file we must compensate by subtracting this amount from the file's size.
2014-06-05 14:36:56 +10:00
Michael Chapman
edd2eec16c ringbuffer: fix qb_rb_open_2() debug format string
qb_log_target_formats() does not support formatting size_t values with
%zd.  Use %ld to format them as long integers instead.
2014-06-05 14:36:43 +10:00
David Vossel
f8b4a1bd91 Merge pull request #118 from davidvossel/master
Fix: trie: fixes regression caused by ref count refactoring
2014-05-12 09:38:18 -05:00
David Vossel
e0bca21e7a Fix: trie: fixes regression caused by ref count refactoring 2014-05-09 11:14:48 -04:00
David Vossel
29345812e7 Merge pull request #116 from davidvossel/master
clang analyzer fixes
2014-04-04 14:54:59 -05:00
David Vossel
76b693b8f3 Low: trie: cleanup ref count logic in trie_notify_del 2014-04-04 13:14:51 -05:00
David Vossel
ad248a733e Low: ipcs: Cleanup unnecessary reference counting 2014-04-04 12:12:58 -05:00
David Vossel
00906bb9b3 Low: check: Update clang path in check script 2014-04-04 12:07:38 -05:00
David Vossel
c6f4fcd778 Merge pull request #115 from davidvossel/master
properly timeout ipc recv
2014-03-12 15:31:35 -05:00
David Vossel
9d198a9b64 Low: check_ipc: Verify ipc recv times out correctly 2014-03-12 14:07:19 -04:00
David Vossel
08356b84fa Fix: ipcc: Properly timeout during recv when timeout value is provided 2014-03-12 14:05:13 -04:00
David Vossel
5459350ff0 Merge pull request #113 from inouekazu/log_eagain
Low: ipc_setup.c: Add log for EAGAIN
2014-03-05 16:11:14 -06:00
David Vossel
d8e2505016 Low: check_ipc.c: Correctly check the event queue length for bulk events 2014-02-25 23:31:07 -06:00
David Vossel
331cd031c6 Low: check_ipc.c: Correctly wait for server process to exit 2014-02-25 22:51:58 -06:00
David Vossel
e4cac9eb95 Low: check_ipc.c: Avoid using MAX_MSG_SIZE macro directly in calculations 2014-02-25 16:43:41 -06:00
David Vossel
39ed456da8 Low: build: Don't allow Bsymbolic-functions LDFLAG to be used, it breaks unit tests 2014-02-25 15:17:16 -06:00
Kazunori INOUE
f5c8c94a5f Low: ipc_setup.c: Add log for EAGAIN 2014-02-20 18:07:09 +09:00
David Vossel
78978d07ac Fix: build: Allow 'make rpm' to work with lightweight tags for release candidates 2014-02-19 12:39:58 -05:00
David Vossel
ec8de8d461 Fix: spec: reference correct url in spec file 2014-02-19 12:38:37 -05:00
David Vossel
e89c674232 Doc: update broken doxygen link to something that exists 2014-02-19 12:15:47 -05:00
David Vossel
532acdffa4 Bump version to 0.17.0 2014-02-19 10:33:30 -06:00
David Vossel
6a1082a09f Merge pull request #112 from davidvossel/master
Low: ipc_socket: further optimize max msg size calculations for fbsd portability tests
2014-02-19 09:42:33 -06:00
David Vossel
334762c90e Low: ipc_socket: further optimize max msg size calculations for fbsd portability tests 2014-02-11 11:19:57 -06:00
David Vossel
f085e5351d Merge pull request #111 from davidvossel/master
Low: ipc_socket: Allow socket max msg size to be calculated more accurat...
2014-02-10 16:56:27 -06:00
David Vossel
9e6cacd4e6 Low: ipc_socket: Allow socket max msg size to be calculated more accurately 2014-02-10 16:55:36 -06:00
David Vossel
29bbe615b5 Merge pull request #110 from davidvossel/master
Fix: fixes travis compile time error
2014-02-05 10:25:40 -06:00
David Vossel
aa24dd848a Fix: fixes travis compile time error 2014-02-05 10:21:12 -06:00
David Vossel
6ffa3147b8 Merge pull request #107 from davidvossel/ref_count_cleanup
High: ipcs: Prevent ipc server use after free.
2014-02-05 08:35:56 -06:00
David Vossel
441ee1b952 Low: tests: Fixes compile time issue with make check 2014-01-20 16:59:52 -06:00
David Vossel
6a2ff420e1 High: ipcs: Prevent ipc server use after free.
The ipc server registers the bind socket to
the poll loop in order to be alerted to new
connection requests. Upon shutdown, the ipc server
does not remove this poll entry. This patch fixes
this use after free.
2014-01-17 11:22:27 -06:00
David Vossel
d9706f7561 Merge pull request #106 from davidvossel/ref_count_cleanup
reference count fixes
2014-01-16 07:26:42 -08:00
David Vossel
58c0c90979 Low: ipc: Remove ipc connection reference given to dispatch functions
We don't need to give the dispatch_add callback a reference
since the dispatch_del callback must occur before the
connection is destroyed. This extra reference counting
causes unnecessary complexity.
2014-01-15 11:44:44 -06:00
David Vossel
c89b11c6b5 High: ipc: Fixes memory leak in server connection accept when client partially connects 2014-01-15 11:43:46 -06:00
David Vossel
b579f7af15 Merge pull request #105 from gao-yan/ipc-server-backlog
IPC: Increase the listen backlog of IPC server
2014-01-08 07:14:33 -08:00