-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Split RPL into core and mode related functions. #1167
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
Conversation
|
I guess this PR will have to wait until the BBQ? (no prob, just asking) |
|
Yes, you're right. |
sys/net/routing/rpl/rpl_sm.c
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
RPL Storing mode impl?
|
Fixed. |
|
@FabianBrandt please rebase and squash together |
|
Remind myself - never rebase on friday 13. Took some time - seems to be done. |
|
Well, never rebase at 1 o'clock in the morning … ;) |
|
@FabianBrandt needs rebase again... |
|
Successfully rebased and updated refs/heads/rpl_base_split. |
|
Well, hm, seems to have been a very short-term success... |
|
@FabianBrandt, you forgot to push the rebased branch, didn't you? :) |
|
Nope, pushed it ;) Maybe its about me and git. I will have a look. Edit: found an error... |
|
After your comment
there is no new commit. |
|
There it is. Don´t really know what went wrong exactly. However I had to resolve a conflict, which is still stated in the commit but is not present anymore. From what I understand from git, this means, that there was a merge, which involved more than automatic resolving - which is not true actually. |
|
Maybe rename |
sys/net/routing/rpl/rpl.c
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
STORING_MODE_NO_MC is not defined, right?
I would propose to call it something like RPL_MOP_2 or RPL_STORING_MODE_NO_MC.
|
It's partly overlapping with #891, right? Could you review (and ack this) first? |
sys/net/routing/rpl/rpl.h
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe rephrase so something saying that it shouldn't be necessary to modify something in this file. Now, it sounds like: "Don't touch this file!".
sys/net/routing/rpl/rpl_sm.h
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copy and paste from rpl.h?
|
As far as I can see all function declarations in |
|
That are really some comments ... I try to look into all of it until tomorrow. |
@OlegHahm Depends - P2P should have other + there maybe some alterations in future. I would agree, that a certain amount of functions are common for storing/non-storing. Maybe thats a idea to split them into another file and future additions can than lead to a special |
|
Based on the comments I´ve done the following:
What is not done: Functions from |
sys/net/routing/rpl/rpl.c
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could elaborate/document why these mutexes are necessary?
|
@FabianBrandt PR needs rebase |
|
Fixed - suggestions inserted. |
|
@OlegHahm can you elaborate , I think @FabianBrandt next steps are based on this PR... |
|
Elaborate on what? I would say ACK. |
|
Don´t ACK. I just recognized a problem with the buffers. I´m making a new commit this weekend. |
|
Buffer issue fixed. If ACK, I will rebase/squash. |
|
Can you rebase first? |
|
Sure. Sorry wrong button -.- |
sys/net/routing/rpl/rpl_storing.c
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Debug should be disabled by default.
|
Apart from the |
|
Of course this should be zero. Also |
|
Then let's go! |
Split RPL into core and mode related functions.
With this PR rpl.c only contains the core RPL-functions, which include basic initialization, mutex-management, basic receiving of RPL-messages and calling mode specific functions. Each mode is now moved to its own .c/.h pair. In addition rpl.h finally got documentation.
Note: This PR does not include the by now not acknowledged PRs #1080 and #930. Therefore some code is marked as obsolete and will be altered on merge/rebase of the other PRs.