On 2025-03-06 11:17, Kienan Stewart via lttng-dev wrote:
Hi 方锴,

On 3/4/25 3:09 AM, 方锴 via lttng-dev wrote:

I have referenced your project, URCU (Userspace RCU), on GitHub, which is based on the QSBR model. However, I
noticed that when using it in user mode, it makes system calls to enter the kernel. Could you please provide guidance on how to address this issue?

Are there specific parts of the API that you need to be user-space only?

> I aim to achieve a pure user-mode implementation. Specifically, I would appreciate any insights or suggestions on avoiding system calls while still maintaining the functionality of the QSBR model in user space. Thank you very much for your time and assistance.

Currently the locking is done using futexs, which are system calls.

Clarification: the wait/wakeup between read-side and synchronize is done
using the futex system call. There is no locking on the read-side
per-se.

Thanks,

Mathieu

Those could potentially be replaced with a poll/retry system either in a different flavour of URCU or at build-time.

thanks,
kienan


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

Reply via email to