On Tue, Jun 19, 2018 at 02:10:18PM -0700, Cong Wang wrote:
> On Mon, Jun 18, 2018 at 7:04 AM, Hangbin Liu <liuhang...@gmail.com> wrote:
> > @@ -94,10 +95,13 @@ static int ipvlan_set_port_mode(struct ipvl_port *port, 
> > u16 nval)
> >                         mdev->l3mdev_ops = NULL;
> >                 }
> >                 list_for_each_entry(ipvlan, &port->ipvlans, pnode) {
> > +                       flags = ipvlan->dev->flags;
> >                         if (nval == IPVLAN_MODE_L3 || nval == 
> > IPVLAN_MODE_L3S)
> > -                               ipvlan->dev->flags |= IFF_NOARP;
> > +                               dev_change_flags(ipvlan->dev,
> > +                                                flags | IFF_NOARP);
> >                         else
> > -                               ipvlan->dev->flags &= ~IFF_NOARP;
> > +                               dev_change_flags(ipvlan->dev,
> > +                                                flags & ~IFF_NOARP);
> 
> You need to check the return value of dev_change_flags().

Hi Wang Cong,

The only case dev_change_flags() return an err is when we change IFF_UP flag.
Since we only set/reset IFF_NOARP, do you think we still need to check the
return value?

Thanks
Hangbin

Reply via email to