[lttng-dev] [RFC] wfcqueue: allow defining CDS_WFCQ_WAIT_SLEEP to override `poll'
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Mon Aug 20 15:48:35 EDT 2018
----- On Aug 17, 2018, at 4:31 PM, Eric Wong normalperson at yhbt.net wrote:
> Mathieu Desnoyers <mathieu.desnoyers at efficios.com> wrote:
>> ----- On Aug 1, 2018, at 2:54 PM, Eric Wong normalperson at 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.h.
>> >
>> > This alternative behavior could include logging, performing
>> > low-priority cleanup work, sleeping a shorter/longer interval
>> > or any combination 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/
>>
>> Rather than introducing a macro here, can we extend the API to
>> pass a callback and a private pointer that would perform the
>> sleeping behavior requested by the caller ?
>
> Given this is deep in the call stack, it would require modifying
> a lot of callers. So it seems like a compatibility/migration
> nightmare. I fear it's too much work for a small improvement.
>
> For glibc, we can simply define `poll' to `__poll' to avoid
> those test failures, at least
I merged the patch you proposed, it makes sense considering the
context.
Thanks!
Mathieu
--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
More information about the lttng-dev
mailing list