#76 Replace lfds queue with libsds wrapper
Closed: Fixed 7 years ago Opened 7 years ago by firstyear.

LFDS relies heavily on linux and x86_64 only hardware extensions. At the moment, this makes lfds "not portable", which ties nunc-stans down also.

To make matters more complex, to avoid memory leaks and corruptions the LFDS queue needs a small amount of hand holding to prevent leaks. The build process is complex due to lack of autotools and just generally complex.

To resolve this, I have created a datastructure wrapper, libsds that:

  • uses autotools to build lfds, to make linking and building easier
  • Is extensively tested with cmocka and multithread conditions.
  • Contains a fallback mutex queue for platforms other than x86_64 linux.
  • Contains the garbage collection abstraction so nunc-stans doesn't need to worry about it.

This is needed for #75 to port to FreeBSD


commit b382af6
commit 6a6509b
Writing objects: 100% (25/25), 6.06 KiB | 0 bytes/s, done.
Total 25 (delta 20), reused 0 (delta 0)
To ssh://git@pagure.io/nunc-stans.git
12f9429..1ac03f9 master -> master

@firstyear changed the status to Closed

7 years ago

Login to comment on this ticket.

Metadata