-
Notifications
You must be signed in to change notification settings - Fork 53
Description
v6.6.y-rros-rebase tracing issue
What we have done
Now we have a branch named v6.6.y-rros-rebase, which rebases the v5.13-rros code onto linux 6.6.23.
What i did on this branch:
-
Use v6.6.y from the linux-stable kernel tree as codebase
-
Set the code's HEAD to Linux 6.6.23
-
Apply the v6.6.y-linux-dovetail patch set
-
Apply the
Enable Rust support for AArch64patchset -
Port rros kernel to Linux 6.6.23
-
Add rros kernel code
-
Add placeholder code in dovetail interface
-
Add rust wrapper code used in rros but not in the v6.6.y. For the rust wrapper code whose API used by rros has changed, I also copied the old version of the wrapper code and compiled them conditionally through
CONFIG_RROS, includingSpinLock,Mutex,WorkQueue,CondVar,Arc,Box,Error,ARef,module::module. All rust wrapper code not in linux-stable is also conditionally compiled withCONFIG_RROS(there may be omissions). -
Add some features used in rros on
Makefile.build -
Make rust-analyzer parse rros code
-
Conditional compilation helper function
-
Fixed some code issues caused by Linux C code changes
- Changes of the sb_buff structure and related functions
- Some functions have been made inline
- Changes of
vm_area_struct
-
What we should do next
- Port rros kernel onto new r4l wrapper, including
SpinLock,Mutex,WorkQueue,Arc - Add a devops approach to get daily updates of r4l code and automatically rebase. Email alerts to community members when rebase fails (Feat Request: Build a CI/CD or a robot to backport new R4L wrappers #65)
Guidelines about how to port rros kernel onto new r4l wrapper
NOTE: Ensure that each commit code is compilable and that the functionality of the entire PR passes the test
- Add a new config for which wrapper you want to port
e.g. forSpinLock, add aCONFIG_RROS_SPINLOCKto replaceCONFIG_RROS - Remove the
CONFIG_RROS_XXXand the unstable wrapper, and make the rros kernel compile - Test rros kernel code by using libevl
Additional Information
I think we can use the code after this issue is closed as the codebase for the #48