On Thu, Jul 5, 2012 at 7:48 AM, ravi kerur <rke...@gmail.com> wrote:
> I understand code review is time consuming and please note it's a bit time
> consuming to me as well as I have to retest/rebase everytime and I am not
> sure whether the amount of time I am spending on this is justifiable?

Reviewing this code is frustrating because you don't really take into
account the comments that I make.  There are changes along the lines
that I ask but they generally don't address the heart of the matter.
Until that changes, this isn't really a good use of either of our
time.

I would focus less on writing and sending out new code and more time
on really understanding the problems at hand.  This isn't just in
relationship to the comments that I've made - your upstream patch for
emulation of offloading doesn't  even follow the pattern of existing
code (for example, how do you know when to emulate?).

> MPLS actions are implemented as per section 4.8 in OF 1.1 specification,
> excerpts below
>
> "The Apply-Actions instruction and the Packet-out message include an action
> list. The semantic of the
> action list is identical to the OpenFlow 1.0 specification. The actions of
> an action list are executed in the
> order specified by the list, and are applied immediately to the packet."

As I mentioned before, we're talking about the kernel API, not the OpenFlow one.

> I looked at implementing ttl actions as set operations and didn't find it
> suitable as every ttl action is applied immediately and it won't integrate
> well with other mpls actions(push/pop and set label) which are applied
> immediately. Please note there can be more than 2 mpls push and pop actions
> configured.

Supporting additional levels of labels is a perfect use case for
recirculation.  I hope you realize by now that I'm not going to accept
a patch even if it implements the immediate use case and is expedient.
 It needs to be well designed with a reasonable effort at thinking
about how it might be used in the future.  If the proper way to
implement something is through recirculation then you must implement
recirculation.  Since the API you are defining is permanent you can't
do something else now and hope that someone else fixes it in the
future.  That being said, I'm fine with not implementing certain
portions now because that leaves us free to come back to it later once
all of the pieces are there.  That's why I suggested that you
implement these actions purely in userspace.  Partial MPLS or slow
MPLS is better than no MPLS as long as we can improve it in the
future.

> With respect to packet recycling I thought it was for handling layer-3 after
> executing mpls actions or could be generic purpose as well but focused on
> inner-header parsing or further actions executed based on inner-header after
> applying actions to outer-header. Packet recycling for ttl operations looks
> like an overkill to me as you might be aware that packet recycling has
> performance impact.

Do you actually know what the performance impact is or are you just speculating?
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to