|
Revision tags: release-2.2.1-alpha, release-2.1.12-stable, release-2.1.11-stable, release-2.1.10-stable |
|
| #
bb0f8fe7 |
| 16-Mar-2019 |
Azat Khuzhin <[email protected]> |
Fix leaks in error path of the bufferevent_init_common_()
(cherry picked from commit 6995b9a864c16bcb84ea0f7a2cf856143020316b)
|
|
Revision tags: release-2.1.9-beta, release-2.0.23-beta |
|
| #
22609d66 |
| 19-Nov-2018 |
Azat Khuzhin <[email protected]> |
bufferevent: add debug messages when .setfd/.getfd/.enable/.disable failed
(cherry picked from commit 57765b23c81a9150ca0f77ed5f4d9b64a43cf30d)
|
| #
74517b2a |
| 30-Nov-2018 |
Azat Khuzhin <[email protected]> |
Use BEV_UPCASE() everywhere
Done with coccinelle and manual line rewrap: $ cat > BEV_UPCAST.cocci @@ expression field_; expression var; @@
- EVUTIL_UPCAST(var, struct bufferevent_privat
Use BEV_UPCASE() everywhere
Done with coccinelle and manual line rewrap: $ cat > BEV_UPCAST.cocci @@ expression field_; expression var; @@
- EVUTIL_UPCAST(var, struct bufferevent_private, field_) + BEV_UPCAST(var)
$ spatch --sp-file BEV_UPCASE.cocci --in-place bufferevent*.c > /dev/null
(cherry picked from commit 7bcf576b396b22f218074c446691526a3ce509a6)
show more ...
|
| #
3f692fff |
| 17-Oct-2018 |
Azat Khuzhin <[email protected]> |
Merge branch 'be-wm-overrun-v2'
* be-wm-overrun-v2: Fix hangs due to watermarks overruns in bufferevents implementations test: cover watermarks (with some corner cases) in ssl bufferevent
Fixes
Merge branch 'be-wm-overrun-v2'
* be-wm-overrun-v2: Fix hangs due to watermarks overruns in bufferevents implementations test: cover watermarks (with some corner cases) in ssl bufferevent
Fixes: #690 (cherry picked from commit 878bb2d3b9484b27594308da1d0d6a7c9bdf6647)
show more ...
|
|
Revision tags: release-2.1.8-stable, release-2.1.7-rc |
|
| #
75216643 |
| 16-Sep-2016 |
Seven <[email protected]> |
be: just a simple mistake, reinclude the <errno.h>
include the <errno.h> twice.
|
|
Revision tags: release-2.1.6-beta |
|
| #
3c1f58f5 |
| 05-Nov-2015 |
Azat Khuzhin <[email protected]> |
be: introduce bufferevent_generic_adj_existing_timeouts_()
And use it in openssl/sock layers to avoid copy-pasting it's variants.
|
| #
a96b73b9 |
| 05-Nov-2015 |
Azat Khuzhin <[email protected]> |
be: add_event: use evutil_timerisset()
|
| #
1ed6718d |
| 06-May-2015 |
Mark Ellzey <[email protected]> |
expose bufferevent_incref/decref (with fewer modifications)
|
|
Revision tags: release-2.0.22-stable, release-1.4.15-stable, release-2.1.5-beta |
|
| #
b34e4ac3 |
| 12-Sep-2014 |
ufo2243 <[email protected]> |
[Bugfix] fix bufferevent setwatermark suspend_read
|
| #
a21e5108 |
| 12-Sep-2014 |
ufo2243 <[email protected]> |
make bufferevent_getwatermark api more robust
|
|
Revision tags: release-2.1.4-alpha |
|
| #
a3172a41 |
| 24-Dec-2013 |
Nick Mathewson <[email protected]> |
Minor optimizations on bufferevent_trigger options
By making BEV_TRIG_DEFER_CALLBACKS equal to BEV_OPT_DEFER_CALLBACKS, and BEV_TRIG_IGNORE_WATERMARKS disjoint from BEV_OPT_*, we can save a few oper
Minor optimizations on bufferevent_trigger options
By making BEV_TRIG_DEFER_CALLBACKS equal to BEV_OPT_DEFER_CALLBACKS, and BEV_TRIG_IGNORE_WATERMARKS disjoint from BEV_OPT_*, we can save a few operations in bufferevent_run_*, which is critical-path.
show more ...
|
| #
4dd3abd4 |
| 24-Dec-2013 |
Nick Mathewson <[email protected]> |
Make bufferevent_trigger_nolock_() inline
Since most of its callers are using constant EV_READ or EV_WRITE, and using constant 0 as its argument, this should eliminate most of the overhead for this
Make bufferevent_trigger_nolock_() inline
Since most of its callers are using constant EV_READ or EV_WRITE, and using constant 0 as its argument, this should eliminate most of the overhead for this function in the fast case.
show more ...
|
| #
bd419471 |
| 05-Dec-2013 |
Ondřej Kuzník <[email protected]> |
Clarifications in response to merge req. comments
|
| #
a7384c78 |
| 03-Dec-2013 |
Ondřej Kuzník <[email protected]> |
Add an option to trigger bufferevent event callbacks
|
| #
61ee18b8 |
| 03-Dec-2013 |
Ondřej Kuzník <[email protected]> |
Add an option to trigger bufferevent I/O callbacks
|
| #
4ce242bd |
| 03-Dec-2013 |
Ondřej Kuzník <[email protected]> |
Add watermark introspection
|
| #
dbc9cd4d |
| 23-May-2013 |
Maxime Henrion <[email protected]> |
Fix locking in bufferevent_get_options_().
|
| #
31db8a02 |
| 23-May-2013 |
Maxime Henrion <[email protected]> |
Fix a double close() bug in evhttp when the underlying bufferevent uses BEV_OPT_CLOSE_ON_FREE.
|
|
Revision tags: release-2.1.3-alpha |
|
| #
4ea4c6a9 |
| 10-Apr-2013 |
Nick Mathewson <[email protected]> |
Remove bufferevent_del_generic_timeout_cbs as now unused
|
| #
02fbf687 |
| 09-Apr-2013 |
Nick Mathewson <[email protected]> |
Use finalization feature so bufferevents can avoid deadlocks
Since the bufferevents' events are now EV_FINALIZE (name pending), they won't deadlock. To clean up properly, though, we must use the fi
Use finalization feature so bufferevents can avoid deadlocks
Since the bufferevents' events are now EV_FINALIZE (name pending), they won't deadlock. To clean up properly, though, we must use the finalization feature.
This patch also split bufferevent deallocation into an "unlink" step that happens fast, and a "destruct" step that happens after finalization.
More work is needed: there needs to be a way to specify a finalizer for the bufferevent's argument itself. Also, this finalizer business makes lots of the reference counting we were doing unnecessary.
Also, more testing is needed.
show more ...
|
|
Revision tags: release-2.1.2-alpha |
|
| #
060c409e |
| 19-Nov-2012 |
Nick Mathewson <[email protected]> |
Make the argument to bufferevent_get_priority const
|
|
Revision tags: release-2.0.21-stable, release-2.0.20-stable |
|
| #
c0e425ab |
| 09-May-2012 |
Nick Mathewson <[email protected]> |
Restore our priority-inversion-prevention code with deferreds
Back when deferred_cb stuff had its own queue, the queue was always executed, but we never ran more than 16 callbacks per iteration. Tha
Restore our priority-inversion-prevention code with deferreds
Back when deferred_cb stuff had its own queue, the queue was always executed, but we never ran more than 16 callbacks per iteration. That made for two problems:
1: Because deferred_cb stuff would always run, and had no priority, it could cause priority inversion.
2: It doesn't respect the max_dispatch_interval code.
Then, when I refactored deferred_cb to be a special case of event_callback, that solved the above issues, but made for two more issues:
3: Because deferred_cb stuff would always get the default priority, it could could low-priority bufferevents to get too much priority.
4: With code like bufferevent_pair, it's easy to get into a situation where two deferreds keep adding one another, preventing the event loop from ever actually scanning for more events.
This commit fixes the above by giving deferreds a better notion of priorities, and by limiting the number of deferreds that can be added to the _current_ loop iteration's active queues. (Extra deferreds are put into the active_later state.)
That isn't an all-purpose priority inversion solution, of course: for that, you may need to mess around with max_dispatch_interval.
show more ...
|
| #
bd395549 |
| 08-May-2012 |
Nick Mathewson <[email protected]> |
Add a bufferevent_get_priority() function
|
|
Revision tags: release-2.0.19-stable |
|
| #
a4079aa8 |
| 06-Apr-2012 |
Nick Mathewson <[email protected]> |
Replace more deferred_cb names with event_callback
|
| #
ae2b84b2 |
| 06-Apr-2012 |
Nick Mathewson <[email protected]> |
Replace deferred_cbs with event_callback-based implementation.
|