On Tue, Feb 5, 2019 at 4:41 PM Ben Pfaff <b...@ovn.org> wrote: > On Tue, Feb 05, 2019 at 04:26:56PM -0800, Ashish Varma wrote: > > In the parse_flow_monitor_request(), usable_protocols is an out > parameter. > > (and is set in parse_flow_monitor_request() only if a match field is > > provided. ) > > allowed_versions on the other hand is used only in the ofctl_monitor > > function. That is the reason for the check in ofctl_monitor. > > The usual way we handle this sort of version dependency is a bitmap like > 'usable_protocols'. It works well for flows, for example. You can see > lots of examples in ovs-ofctl.c if you search for the identifier > usable_protocols. > > Looking closer at this instance, the existing code is buggy. Currently, > only OpenFlow 1.0 should be supported, because that's the only protocol > where OVS actually supports flow monitoring. > parse_flow_monitor_request() should be returning that consistently as > the out parameter (as you noted). Or it should be returning 0 if it's > impossible to request a flow monitor at all (in the case where OF1.0 > can't support whatever field is specified when > parse_flow_monitor_request__ parses a field). But it's buggy and > nothing ever properly initializes it. That bug is masked by another > bug: nothing ever checks it, either! And, finally, there is a third > bug: ovs-ofctl calls ofputil_append_flow_monitor_request() and blindly > always uses OF1.0, which might not be the protocol actually in use on > the vconn. > > The manpage for the ovs-ofctl monitor command doesn't say that "watch:" > is OF1.0 only or that it is an Open vSwitch extension, either, although > it should. > > It would be for the best if we can fix all these bugs before we add > support for OF1.4+ flow monitor, and then backport the bug fixes. Does > my description of the problems make sense? Can you tackle these > problems too? > > Sure. I will try and fix this before the support for OF1.4+ flow monitor. Thanks for explaining the issue.
> Thanks, > > Ben. > _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev