On Wed, Apr 23, 2014 at 02:06:12PM +0900, Simon Horman wrote: > My understanding of the implementation of patch ports is that they > are rather special, being handled as a special case inside > compose_output_action__() and do not exist in the datapath. > > A side effect of the implementation of patch ports (though perhaps not the > portion mentioned above) is that the OFPUTIL_PC_PORT_DOWN bit may not be > set via a port mod message. In particular, the call to > netdev_turn_flags_on() in update_port_config() fails. > > There is a test provided by Ryu that test this via port mod and thus fails. > > While that test could be modified or the results ignored it seems to me > that it would be best if ryu-check used ports which were more fully > featured and not special cases. > > Thus this patch moves run-ryu to use unix socket backed ports rather than > patch ports. > > Signed-off-by: Simon Horman <ho...@verge.net.au>
Applied, thanks. The following seemed good rationale so I folded it into the commit message: > * I believe a more significant problem with the use of patch ports > is that they will require (more) special case code in order to correctly > handle recirculation. As Ryu provides many tests that exercise > recirculation for MPLS it would be nice if they could be used to exercise > recirculation for MPLS (which I have provided patches for separately[1]) > without the need to add more special-case code for that purpose. > > I believe that patch ports are also incompatible with recirculation for > bonding, which has already been merged, though I have not verified that > and it is not strictly related to this patch as I do not believe that Ryu > provides any tests to exercise that case. > > The key problem with patch ports in the context of recirculation is that > the ofproto and in_port may change during translation. And this > information is lost by the time that execution occurs. > > Furthermore the new in_port will not exist in the datapath as it is a > patch port. That particular problem may be addressed by executing the > actions in user-space, I have posted patches to provide infrastructure > for that[1]. > > Overall it is not clear to me that the complexity of supporting > recirculation for patch-ports would have sufficient pay-off. > > [1] [PATCH v3 00/16] Flow-Based Recirculation for MPLS _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev