Closed bkmgit closed 1 year ago
An Apache 2 licensed implementation is available at https://github.com/zhangshun97/Lock-free-Red-black-tree though it maybe easier to do a new implementation.
Yes, we are using a very old version of linux kernel rbtree implementation. I knew that the license of rbtree is GPL and not camptible with Apache-2.0 license. We may simply remove the license and authors information from the source code and rewrite it in our style to avoid violating the rule. But I think this is a much more disrespectful behavior to the original code and doesn't make any sense. The linux kerenl rbtree implementation is being used by many open srouce projects in github. And we will keep it in our porject until we find a substitute, or the original authors ask us to take it down. Thank you for your advices!
Thanks for information on its widespread use.
Some Kernel files can be dual licensed https://www.kernel.org/doc/html/v5.16/process/license-rules.html
The files rbtree.c and rbtree.h are under GPL2+ licenses and so cannot be included in Apache 2 licensed software directly. Could:
There are some changes compared to what is in the current kernel rbtree.c and rbtree.h