Re: [Patch net-next-2.6] netpoll: disable netpoll when enslave adevice
From: Neil Horman
Date: Thu May 19 2011 - 07:03:52 EST
On Thu, May 19, 2011 at 01:13:29PM +0800, Cong Wang wrote:
> ä 2011å05æ18æ 18:56, Neil Horman åé:
> >On Wed, May 18, 2011 at 06:00:35PM +0800, Amerigo Wang wrote:
> ...
> >>- case NETDEV_GOING_DOWN:
> >> case NETDEV_BONDING_DESLAVE:
> >>+ case NETDEV_ENSLAVE:
> >> nt->enabled = 0;
> >> stopped = true;
> >> break;
> >This wasn't introduced by this patch, but looking at it made me realize that
> >nt->enabled, if it passes through this code path, doesn't properly track weather
> >or not netpoll_setup has been called on this interface. If you look at
> >drop_netconsole_target, you'll see we only call netpoll_cleanup_target if
> >nt->enabled is set. We should probably change the nt->enabled check there, and
> >in store_enabled to be if (nt->np.dev), like we do in the NETDEV_UNREGISTER case
> >in netconsole_netdev_event.
>
> Yeah, also note that we can change ->enabled via configfs too.
> I guess we probably need to fix this in another patch...
>
Yeah, or you can roll it into this one, I think this is the only location that
needs fixing.
>
> >>+#define NETDEV_ENSLAVE 0x0014
> >>
> >Nit:
> >Shouldn't this be NETDEV_BONDING_ENSLAVE, to keep it in line with
> >NETDEV_BONDING_DESLAVE above?
>
> Actually that is my first thought, but I plan to use this in bridge
> case too, because using netconsole on a device underlying a bridge
> makes little sense too. Thus, I prefer NETDEV_ENSLAVE to
> NETDEV_BONDING_ENSLAVE.
>
That seems reasonable, but if its going to be more generic, could you change
NETDEV_BONDING_DESLAVE to NETDEV_DESLAVE?
> >
> >> #define SYS_DOWN 0x0001 /* Notify of system down */
> >> #define SYS_RESTART SYS_DOWN
> >>
> >
> >
> >Other than those two points, this looks good to me
>
> Thanks for review.
Thank you!
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/