Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

include/uk/radix-tree: import linux radix-tree code from freebsd #520

Draft
wants to merge 3 commits into
base: staging
Choose a base branch
from

Conversation

xymeng16
Copy link

@xymeng16 xymeng16 commented Aug 16, 2022

Prerequisite checklist

  • Read the contribution guidelines regarding submitting new changes to the project;
  • Tested your changes against relevant architectures and platforms;
  • Ran the checkpatch.pl on your commit series before opening this PR;
  • Updated relevant documentation.

Base target

  • Architecture(s): N/A
  • Platform(s): N/A
  • Application(s): N//A

Additional configuration

  • LIBSYSCALL_SHIM=y to make ukswrand work for testing

Description of changes

This PR imports linux radid-tree from freebsd source code. Modifications are applied to the original code to make it adapted to the Unikraft's API. This version does not introduce any lock to the data structure, hence users should take care of the synchronization by themselves.

The testsuite of this data structure is publicly available on uk-rdtree-test.

Original file <commit 307f78f3ed90a4145eeb2c8cc79bc95b2666f57a>:
    - sys/compat/linuxkpi/common/include/linux/radix-tree.h
    - sys/compat/linuxkpi/common/src/linux_radix.c

This commit import linux radid-tree from freebsd source code.
Modifications are applied to the original code to make it adapted
to the Unikraft's API. This version does not introduce any lock to
the data structure, hence users should take care of the
synchronization by themselves.

Signed-off-by: Xiangyi Meng <xymeng16@gmail.com>
@xymeng16 xymeng16 mentioned this pull request Aug 16, 2022
4 tasks
@marcrittinghaus marcrittinghaus added new/primitive New internal primitive area/include Part of include/uk gsoc22 Google Summer of Code 2022 Project labels Aug 16, 2022
Signed-off-by: Xiangyi Meng <xymeng16@gmail.com>
Signed-off-by: Xiangyi Meng <xymeng16@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/include Part of include/uk gsoc22 Google Summer of Code 2022 Project new/primitive New internal primitive
Projects
Status: 🧊 Icebox
Development

Successfully merging this pull request may close these issues.

None yet

4 participants