[lttng-dev] [PATCH userspace-rcu 1/2] Port: fix compatibility header for Cygwin

Mathieu Desnoyers mathieu.desnoyers at efficios.com
Fri Jun 3 15:58:48 UTC 2016


----- On Jun 3, 2016, at 5:52 PM, Sebastien Boisvert sboisvert at gydle.com wrote:

> On 06/03/2016 11:35 AM, Mathieu Desnoyers wrote:
>> ----- On Jun 3, 2016, at 2:55 PM, Sebastien Boisvert sboisvert at gydle.com wrote:
>> 
>>> Thank you for reviewing the patches.
>>>
>>> I noticed that I should have send an email with "[PATCH userspace-rcu 0/2]" in
>>> the subject
>>> before sending the 2 others.
>>>
>>> My next stop is building LTTng-UST in Cygwin. I am not saying that it will work,
>>> but it will be fun.
>> 
>> We did experimental ports of ust and tools to cygwin a while back.
>> The main issue ended up being file descriptor passing not being
>> supported on cygwin.
>> 
>> See the resulting prototypes here (for lttng 2.0):
>> 
>> http://git.lttng.org/?p=lttng-ust.git;a=shortlog;h=refs/heads/cygwin-2.0-experimental
> 
> 
> I can see that the solution to the file descriptor passing was to pass VFS paths
> instead [1].

Unfortunately this solution is inelegant and intrusive. If windows
with "handles" can do something similar to FD passing over unix sockets,
it would fit much better in our design.

> 
> Are there other caveats ?

Also, I think you need to use LTTNG_DEBUG_NOCLONE=1
when running sessiond, due to other cygwin limitations.

Other than that, not that I recall (it has been a few year...).

Thanks,

Mathieu


> 
> [1]
> http://git.lttng.org/?p=lttng-ust.git;a=commit;h=bf5ff35ed0a3a7f60e92d654a5b97e73b94da852
> 
> 
>> http://git.lttng.org/?p=lttng-tools.git;a=shortlog;h=refs/heads/cygwin-2.0-experimental
>> 
>> Thanks,
>> 
>> Mathieu
>> 
>> 
>>>
>>> On 06/03/2016 02:28 AM, Mathieu Desnoyers wrote:
>>>> Both patches merged into master and stable-0.9, thanks!
>>>>
>>>> Mathieu
>>>>
>>>> ----- On Jun 2, 2016, at 5:01 AM, Sebastien Boisvert sboisvert at gydle.com wrote:
>>>>
>>>>> Signed-off-by: Sebastien Boisvert <sboisvert at gydle.com>
>>>>> ---
>>>>> urcu/syscall-compat.h | 4 ++++
>>>>> 1 file changed, 4 insertions(+)
>>>>>
>>>>> diff --git a/urcu/syscall-compat.h b/urcu/syscall-compat.h
>>>>> index 9b9afec..d603db2 100644
>>>>> --- a/urcu/syscall-compat.h
>>>>> +++ b/urcu/syscall-compat.h
>>>>> @@ -31,6 +31,10 @@
>>>>> #include <sys/syscall.h>
>>>>> #elif defined(__linux__) || defined(__GLIBC__)
>>>>> #include <syscall.h>
>>>>> +
>>>>> +#elif defined(__CYGWIN__)
>>>>> +/* Don't include anything on Cygwin. */
>>>>> +
>>>>> #else
>>>>> #error "Add platform support to urcu/syscall-compat.h"
>>>>> #endif
>>>>> --
>>>>> 2.8.3
>>>>> _______________________________________________
>>>>> lttng-dev mailing list
>>>>> lttng-dev at lists.lttng.org
>>>>> https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

-- 
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com


More information about the lttng-dev mailing list