On Tue, Jul 12, 2016 at 02:18:32PM -0700, David Miller wrote:
> From: Brenden Blanco <bbla...@plumgrid.com>
> Date: Tue, 12 Jul 2016 00:51:29 -0700
> 
> > +   mlx4_en_free_resources(priv);
> > +
> >     old_prog = xchg(&priv->prog, prog);
> >     if (old_prog)
> >             bpf_prog_put(old_prog);
> >  
> > -   return 0;
> > +   err = mlx4_en_alloc_resources(priv);
> > +   if (err) {
> > +           en_err(priv, "Failed reallocating port resources\n");
> > +           goto out;
> > +   }
> > +   if (port_up) {
> > +           err = mlx4_en_start_port(dev);
> > +           if (err)
> > +                   en_err(priv, "Failed starting port\n");
> 
> A failed configuration operation should _NEVER_ leave the interface in
> an inoperative state like these error paths do.
> 
> You must instead preallocate the necessary resources, and only change
> the chip's configuration and commit to the new settings once you have
> successfully allocated those resources.
I'll see what I can do here.

Reply via email to