Thread (17 messages) flat view 17 messages, 5 authors, 2011-11-25

Re: MPLS for Linux kernel

From: Jorge Boncompte [DTI2] <hidden>
Date: 2011-11-22 14:33:47

El 22/11/2011 14:55, Igor Maravić escribió:
2011/11/22 Jorge Boncompte [DTI2] [off-list ref]:
quoted
       You keep insisting in that you fixed a lot of things, but you have provided a
git tree with just one big commit and say that have taken some of my patches on
it, could you please provide patches on TOP of the sourceforge code for the
things that are not fixed there?
I insist on that because I did do a lot of things. When I did send you
patch, on TOP of your net-next code, about the most important bug
(stack overflow that was happening when mpls nhlfe entry was built)
that I fixed it was just ignored. Unfortunately I started  fixing MPLS
code without git, and I added your patches manually.
	(Dropped Dave from the cc: list)

	But you failed to provide patches, that fix ONE thing at a time, and not a
patch with all the work that you have done, that's what you sent me for the
stack overflow bug or have done now with the git tree. Providing clean,
separated patches it's YOUR work if you WANT to see them applied on the
mpls-linux tree.
quoted
       The kernel code that is not commented out on the mpls-linux code when you build
the kernel it the shim layer and it's not done on purpose. This code was written
by James to be a generic feature of the networking layer. Now I am not sure that
it has any value keeping it and am for removing it.
I didn't understand what did You want to say here.
	You have #ifdefed the MPLS code in the core networking code, that's wrong,
that's not the way to go if you want to see the code merged upstream. The shim
layer was thought as a core component of the kernel. If we rip it what we come
at with should be #ifdef-less.
quoted
       The other thing that probably I am going to remove is the labelspace support. I
don't see a use for it, and even Cisco doesn't implement it either that I know.
That's 15 min of work, but I think that labelspaces should stay.
	Yes, I dit it an hour ago on a private branch. :) Why should did it stay?
quoted
       Then we must rework the netlink interface to make it cleaner and extensible.
What do you mean by extensible? With my netlink code you can add,
change and delete ilm, nhlfe and xc entries without any problem. What
other could one wish for? As I could see in your code you can't change
ilm, nhlfe and xc entries.
	Yes, I did not finish the change code because no ones uses it currently
(iproute, quagga). In my opinion the instructions should be nested attributes,
and we have to change how the MPLS_CHANGE_* flags get passed, currently it's a hack.
quoted
       Check the dst's usages, there has been a lot of changes in the core kernel here
lately and I am not sure if we are using it correctly.
As far I could see you did a great job of using nhlfe as dst entry.
Problem was when you delete nhlfe entry that is referenced with ilm
entry. It shouldn't be allowed to be deleted, or the ilm should change
last instructions from fwd to peek. I did the last thing.
	If I delete an nhlfe I for sure don't want the traffic for be routed instead of
dropped. Instructions are policy set by the user and you shouldn't change them
under the hood.
Also there was the problem with neighbor hh_cache, because we are
using nhlfe as dst_entry but I fixed that too.  (hh_cache wouldn't
change when we are sending packets with diferent type (ETH_P_IP and
ETH_P_MPLS_UC))
	patch.
Also ilm shouldn't be dst_entry. I'm going to change that.
	I agree 100%. I did forgot it.

	Regards,
		Jorge
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help