netconsole regression w/ 8d8fc29d

From: Rik van Riel
Date: Wed Jun 15 2011 - 03:58:13 EST


After commit 8d8fc29d02a33e4bd5f4fa47823c1fd386346093
(netpoll: disable netpoll when enslave a device), it is
no longer possible to use netconsole together with bridged
KVM guests.

I can see why the change looked reasonable from a networking
point of view, but this has completely disabled netconsole
functionality for a common KVM use case.

After the change, netconsole refuses to bind to eth0.

Since the bridge interface does not support polling,
netconsole cannot use that, either.

I am now reduced to taking digital photos of the last screen
of a kernel oops, instead of getting oopses streamed to my
logging server.

To me the "unpredictable results" were way preferable to
what we have now.

Is there a way forward to restore netconsole functionality
for people who use KVM with bridging, or is it best to just
revert this commit?

commit 8d8fc29d02a33e4bd5f4fa47823c1fd386346093
Author: Amerigo Wang <amwang@xxxxxxxxxx>
Date: Thu May 19 21:39:10 2011 +0000

netpoll: disable netpoll when enslave a device

V3: rename NETDEV_ENSLAVE to NETDEV_JOIN

Currently we do nothing when we enslave a net device which is running netcon
Neil pointed out that we may get weird results in such case, so let's disabl
netpoll on the device being enslaved. I think it is too harsh to prevent
the device being ensalved if it is running netconsole.

By the way, this patch also removes the NETDEV_GOING_DOWN from netconsole
netdev notifier, because netpoll will check if the device is running or not
and we don't handle NETDEV_PRE_UP neither.

This patch is based on net-next-2.6.

Signed-off-by: WANG Cong <amwang@xxxxxxxxxx>
Cc: Neil Horman <nhorman@xxxxxxxxxx>
Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>


--
All rights reversed
--
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/