[lttng-dev] [PATCH 0/3] rculfhash: error checking fixes

2014-06-23 Thread Eric Wong
-errcheck for you to fetch changes up to d54dd3e6ada2edf4599fc0f26e647a6942a73a39: rculfhash: remove duplicated code (2014-06-24 00:39:26 +) Eric Wong (3): rculfhash: fall back to single-threaded resize on calloc failure

[lttng-dev] [PATCH 2/3] rculfhash: handle pthread_create failures

2014-06-23 Thread Eric Wong
Like calloc, pthread_create may fail with EAGAIN due to a lack of resources. Account for that and gracefully continue. Signed-off-by: Eric Wong --- rculfhash.c | 24 ++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/rculfhash.c b/rculfhash.c index 2a45045

[lttng-dev] [PATCH 3/3] rculfhash: remove duplicated code

2014-06-23 Thread Eric Wong
Signed-off-by: Eric Wong --- rculfhash.c | 19 --- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/rculfhash.c b/rculfhash.c index d534be2..61da37a 100644 --- a/rculfhash.c +++ b/rculfhash.c @@ -1177,6 +1177,10 @@ void partition_resize_helper(struct cds_lfht *ht

[lttng-dev] [PATCH 1/3] rculfhash: fall back to single-threaded resize on calloc failure

2014-06-23 Thread Eric Wong
Having a calloc fail on my server should not be fatal. Signed-off-by: Eric Wong --- rculfhash.c | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/rculfhash.c b/rculfhash.c index 7d39388..2a45045 100644 --- a/rculfhash.c +++ b/rculfhash.c @@ -1189,7 +1189,10 @@ void

[lttng-dev] [PATCH urcu] x86: drop extra semi-colon in caa_cpu_relax

2014-07-30 Thread Eric Wong
This fixes compilation in braceless if/else constructs: if (expr) caa_cpu_relax(); else ... Signed-off-by: Eric Wong --- Btw, did you notice my rculfhash patches last month. I just realize I forgot to Cc you directly. Thanks for URCU! urcu

Re: [lttng-dev] [PATCH 0/3] rculfhash: error checking fixes

2014-07-31 Thread Eric Wong
Mathieu Desnoyers wrote: > All merged, thanks! Sorry for the delay, the past month has been quite busy. No worries. I've been sidetracked into other projects, too. > Eric Wong wrote: > > In the future, it would also be nice if the alloc_bucket_table behavior > > c

Re: [lttng-dev] [PATCH 0/3] rculfhash: error checking fixes

2014-07-31 Thread Eric Wong
Mathieu Desnoyers wrote: > I do have to focus on other things at the moment, so you are welcome > to contribute those changes! OK, I'll try to get back to the rculfhash-using project in the next few weeks (but no promises) > > While we're on ABI/API changes, there's also several other changes >

Re: [lttng-dev] [RFC PATCH urcu] lfstack: Implement mutex-free stack head with transparent union

2014-07-31 Thread Eric Wong
Thanks, seems to work for me. I tested push + pop_all with a non-yet-public project dynamically-linked to liburcu-cds. The same binary continued working without ABI breakage when swapping shared libs. Tested-by: Eric Wong I'll test the wfcqueue change tom

Re: [lttng-dev] [PATCH 0/3] rculfhash: error checking fixes

2014-07-31 Thread Eric Wong
Mathieu Desnoyers wrote: > I'm trying something with transparent union. See patch in separate > email. Thanks! I didn't know about the transparent union feature in GCC, looks much nicer than what I would've done :) > > > > * cmpxchg_double (cmpxchg16b on x86-64) so lfstack can use > > > > a l

Re: [lttng-dev] [RFC PATCH urcu] wfcqueue: Implement mutex-free wfcqueue head with transparent union

2014-08-02 Thread Eric Wong
Thanks, Tested-by: Eric Wong ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

[lttng-dev] [PATCH urcu] wfstack: implement mutex-free wfstack with transparent union

2014-08-17 Thread Eric Wong
This saves space for users who use alternative synchronization mechanisms. Signed-off-by: Eric Wong Cc: Paul E. McKenney Cc: Lai Jiangshan Cc: Mathieu Desnoyers --- urcu/static/wfstack.h | 18 +++--- urcu/wfstack.h| 23 +-- wfstack.c | 9

[lttng-dev] [PATCH v2] wfstack: implement mutex-free wfstack with transparent union

2014-09-01 Thread Eric Wong
This allows users more freedom to use alternative synchronization mechanisms. Changes since v1: - Fix typos in cds_wfs_stack_ptr_t documentation. Thanks to Mathieu for spotting. Signed-off-by: Eric Wong Cc: Paul E. McKenney Cc: Lai Jiangshan Cc: Mathieu Desnoyers --- > > +

Re: [lttng-dev] SPMC Queue in URCU

2016-06-06 Thread Eric Wong
"Mark E. Dawson, Jr." wrote: > Ah, so even the wfcqueue is a linked list under the covers? No > ring buffer or other cache-friendly data structure types > available? Yes it's a linked list, but wfcqueue does no allocations under the covers; but rather the structure is embedded into whatever struc

[lttng-dev] [RFC] wfcqueue: allow defining CDS_WFCQ_WAIT_SLEEP to override `poll'

2018-08-01 Thread Eric Wong
ation of that. This will also make integration into glibc easier, as `poll' linkage causes conformance test failures even when relegated to an impossible code path: https://public-inbox.org/libc-alpha/20180801092626.jrwyrojfye4avcis@whir/ Signed-off-by: Eric Wong --- include/urcu/static/wfcqu

Re: [lttng-dev] [RFC] wfcqueue: allow defining CDS_WFCQ_WAIT_SLEEP to override `poll'

2018-08-17 Thread Eric Wong
Mathieu Desnoyers wrote: > - On Aug 1, 2018, at 2:54 PM, Eric Wong normalper...@yhbt.net wrote: > > > Users may want to use alternative sleeping behavior instead of > > `poll'. Make CDS_WFCQ_WAIT_SLEEP a macro which may be defined > > before including wfcqueue

[lttng-dev] urcu 7ca7fe9c03 + _LGPL_SOURCE regression?

2022-08-09 Thread Eric Wong via lttng-dev
Hello, I've noticed liburcu v0.11.4+ and later fails with the "mwrap" LD_PRELOAD malloc wrapper which initializes an rculfhash in a constructor. The problem happens when using _LGPL_SOURCE + rcu_dereference on a cds_lfht pointer: In file included from /tmp/b/include/urcu/pointer.h:39,

Re: [lttng-dev] urcu 7ca7fe9c03 + _LGPL_SOURCE regression?

2022-08-20 Thread Eric Wong via lttng-dev
Mathieu Desnoyers wrote: > - On Aug 9, 2022, at 2:19 PM, Eric Wong via lttng-dev > lttng-dev@lists.lttng.org wrote: > > > Hello, I've noticed liburcu v0.11.4+ and later fails with the > > "mwrap" LD_PRELOAD malloc wrapper which initializes an rculfhas

[lttng-dev] efficios MX problems? (was: urcu 7ca7fe9c03 + _LGPL_SOURCE regression?)

2022-08-20 Thread Eric Wong via lttng-dev
I'm not sure why b.barracudacentral.org doesn't like my MTA. I got something similar in my initial message to Simon but brushed it off thinking it was a fluke, but I just got this again with Mathieu in the recipient list, as well. dcvr.yhbt.net was recently forced to get a new IP address, but DKIM

[lttng-dev] URCU background threads vs signalfd

2022-09-22 Thread Eric Wong via lttng-dev
Hello, I'm using urcu-bp + rculfhash + call_rcu to implement malloc instrumentation (via LD_PRELOAD) on an existing single-threaded Perl codebase which uses Linux signalfd. signalfd depends on signals being blocked in all threads of the process, otherwise threads with unblocked signals can receive

Re: [lttng-dev] URCU background threads vs signalfd

2022-09-23 Thread Eric Wong via lttng-dev
Mathieu Desnoyers wrote: > On 2022-09-22 05:15, Eric Wong via lttng-dev wrote: > > Hello, I'm using urcu-bp + rculfhash + call_rcu to implement > > malloc instrumentation (via LD_PRELOAD) on an existing > > single-threaded Perl codebase which uses Linux signalfd. &g

Re: [lttng-dev] URCU background threads vs signalfd

2022-09-23 Thread Eric Wong via lttng-dev
Mathieu Desnoyers wrote: > On 2022-09-23 13:55, Eric Wong wrote: > > Mathieu Desnoyers wrote: > > > On 2022-09-22 05:15, Eric Wong via lttng-dev wrote: > > > > Hello, I'm using urcu-bp + rculfhash + call_rcu to implement > > > > malloc

Re: [lttng-dev] URCU background threads vs signalfd

2022-09-26 Thread Eric Wong via lttng-dev
Mathieu Desnoyers wrote: > Do you mind if I fold our 2 patches together with a Co-developed-by tag and > use your Signed-off-by ? Looks good to me, thanks. > Then the question that will arise is whether this change is sufficiently > self-contained that we can push it to stable branches, or if it

[lttng-dev] [PATCH] always check pthread_create for failures

2022-10-02 Thread Eric Wong via lttng-dev
pthread_create may fail with EAGAIN (which is no fault of the programmer), so don't allow the check to be compiled out. Signed-off-by: Eric Wong --- src/urcu-defer-impl.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/urcu-defer-impl.h b/src/urcu-defer-impl.h