[ovs-dev] [PATCH] stream: Fix uninitialized values in stream_init().

Ben Pfaff blp at nicira.com
Fri Nov 4 16:49:19 UTC 2011


That is the following commit:

commit 4edb9ae90e4092f5f56b9d914d2b88783c49860d
Author: Pravin B Shelar <pshelar at nicira.com>
Date:   Fri Oct 21 14:38:54 2011 -0700

    datapath: Refactor actions in terms of match fields.
    
    Almost all current actions can be expressed in the form of
    push/pop/set <field>, where field is one of the match fields. We can
    create three base actions and take a field. This has both a nice
    symmetry and avoids inconsistencies where we can match on the vlan
    TPID but not set it.
    Following patch converts all actions to this new format.
    
    Signed-off-by: Pravin B Shelar <pshelar at nicira.com>
    Acked-by: Jesse Gross <jesse at nicira.com>
    
    Bug #7115

This commit drastically changes the user/kernel interface.  After you
recompiled and installed the new version, did you make sure to unload
the old kernel module and install and load the new kernel module?
Without doing that, I'd expect that no packets get through.

On Fri, Nov 04, 2011 at 07:51:21PM +0900, Jari Sundell wrote:
> The specific change was:
> 
> git diff a0003c0c359bc3ffe8a6683dbd0121877a3ce700..4edb9ae90e4092f5f56b9d914d2b88783c49860d
> 
> Jari Sundell
> 
> On Fri, Nov 4, 2011 at 4:53 PM, Jari Sundell <sundell.software at gmail.com> wrote:
> > After more testing it turns out it isn't the patch itself, rather
> > something that was committed since 65c3058c22.
> >
> > Jari Sundell
> >
> > On Fri, Nov 4, 2011 at 4:30 PM, Jari Sundell <sundell.software at gmail.com> wrote:
> >> Seems things are not yet done... Without this patch (git master)
> >> packets are properly being passed to local port when disable-in-band
> >> is true.
> >>
> >> With the patch no packets get through, with or without disable-in-band set.
> >>
> >> Jari Sundell
> >>
> >> On Thu, Nov 3, 2011 at 5:10 AM, Ben Pfaff <blp at nicira.com> wrote:
> >>> Thanks, pushed to master, branch-1.3, branch-1.2.
> >>>
> >>> On Wed, Nov 02, 2011 at 01:03:56PM -0700, Ethan Jackson wrote:
> >>>> Looks good.
> >>>>
> >>>> Ethan
> >>>>
> >>>> On Wed, Nov 2, 2011 at 12:59, Ben Pfaff <blp at nicira.com> wrote:
> >>>> > stream_init() didn't initialize the remote_ip, remote_port, local_ip, or
> >>>> > local_port members of the stream, so "unix" streams that don't have any of
> >>>> > those would get random values instead.
> >>>> >
> >>>> > Reported-by: "Voravit T." <voravit at kth.se>
> >>>> > Reported-by: Jari Sundell <sundell.software at gmail.com>
> >>>> > ---
> >>>> > ?AUTHORS ? ? ?| ? ?2 ++
> >>>> > ?lib/stream.c | ? ?1 +
> >>>> > ?2 files changed, 3 insertions(+), 0 deletions(-)
> >>>> >
> >>>> > diff --git a/AUTHORS b/AUTHORS
> >>>> > index d19d665..0d4cc95 100644
> >>>> > --- a/AUTHORS
> >>>> > +++ b/AUTHORS
> >>>> > @@ -77,6 +77,7 @@ Henrik Amren ? ? ? ? ? ?henrik at nicira.com
> >>>> > ?Jad Naous ? ? ? ? ? ? ? jnaous at gmail.com
> >>>> > ?Jan Medved ? ? ? ? ? ? ?jmedved at juniper.net
> >>>> > ?Janis Hamme ? ? ? ? ? ? janis.hamme at student.kit.edu
> >>>> > +Jari Sundell ? ? ? ? ? ?sundell.software at gmail.com
> >>>> > ?Jed Daniels ? ? ? ? ? ? openvswitch at jeddaniels.com
> >>>> > ?Jeongkeun Lee ? ? ? ? ? jklee at hp.com
> >>>> > ?Joan Cirer ? ? ? ? ? ? ?joan at ev0.net
> >>>> > @@ -105,6 +106,7 @@ Takayuki HAMA ? ? ? ? ? t-hama at cb.jp.nec.com
> >>>> > ?Teemu Koponen ? ? ? ? ? koponen at nicira.com
> >>>> > ?Tyler Coumbes ? ? ? ? ? coumbes at gmail.com
> >>>> > ?Vishal Swarankar ? ? ? ?vishal.swarnkar at gmail.com
> >>>> > +Voravit T. ? ? ? ? ? ? ?voravit at kth.se
> >>>> > ?YAMAMOTO Takashi ? ? ? ?yamamoto at valinux.co.jp
> >>>> > ?Yongqiang Liu ? ? ? ? ? liuyq7809 at gmail.com
> >>>> > ?kk yap ? ? ? ? ? ? ? ? ?yapkke at stanford.edu
> >>>> > diff --git a/lib/stream.c b/lib/stream.c
> >>>> > index 37b6110..8f567ca 100644
> >>>> > --- a/lib/stream.c
> >>>> > +++ b/lib/stream.c
> >>>> > @@ -616,6 +616,7 @@ void
> >>>> > ?stream_init(struct stream *stream, struct stream_class *class,
> >>>> > ? ? ? ? ? ? int connect_status, const char *name)
> >>>> > ?{
> >>>> > + ? ?memset(stream, 0, sizeof *stream);
> >>>> > ? ? stream->class = class;
> >>>> > ? ? stream->state = (connect_status == EAGAIN ? SCS_CONNECTING
> >>>> > ? ? ? ? ? ? ? ? ? ? : !connect_status ? SCS_CONNECTED
> >>>> > --
> >>>> > 1.7.4.4
> >>>> >
> >>>> > _______________________________________________
> >>>> > dev mailing list
> >>>> > dev at openvswitch.org
> >>>> > http://openvswitch.org/mailman/listinfo/dev
> >>>> >
> >>>
> >>
> >



More information about the dev mailing list