[ovs-dev] [PATCH v2] ofproto/ofproto.c: After port_mod + barrier, port config may not be updated
Isaku Yamahata
yamahata at valinux.co.jp
Thu Oct 18 18:43:50 UTC 2012
On Thu, Oct 18, 2012 at 11:31:03AM -0700, Ben Pfaff wrote:
> On Thu, Oct 18, 2012 at 08:08:52AM +0900, Isaku Yamahata wrote:
> > The following OF packets may produce the wrong result as follows.
> > It depends on how ovs-vswitchd serves OF packets. Sending the OF packets
> > in single TCP packet will increase the possiblity.
> >
> > OF request:
> > feature request
> > port_mod with config LINK DOWN
> > barrier
> > feature request
> >
> > The replies:
> > feature reply with port config UP
> > barrier
> > feature reply with port config UP (this should be DOWN because
> > it's after barrier)
> > port status with port config = DOWN and port status = DOWN
> >
> > The direct cause is updte_port_config() @ ofproto/ofproto.c doesn't update
> > ofputil_phy_port::config. And later the config member is updated
> > by update_port() in main loop().
> > It seems that it tries to produce port_status event due to config change.
> > But changing other OFPC flags doesn't generate port_status event, so it's
> > consistent not to generate the event when OFPC_LINK_DOWN flag is changed.
> >
> > Signed-off-by: Isaku Yamahata <yamahata at valinux.co.jp>
>
> You did a good job preserving the existing properties of this code, but
> the existing properties are really confusing and I'm having a really
> hard time figuring out why they exist. That's bad, because I'm almost
> certainly the original author of this code.
>
> I think I need to take some time to figure out why this code is so odd,
> before we continue to hack on it more. I'll try to do that tomorrow.
I see. FYI here's the related issues I'm seeing.
- Similar issue when setting advertise value.
- If setting advertise failed, the error is ignored.
Should the error be propagated to port_mod request?
--
yamahata
More information about the dev
mailing list