um: add netpoll support
authorRichard Weinberger <[email protected]>
Tue, 26 Jul 2011 00:12:48 +0000 (17:12 -0700)
committerLinus Torvalds <[email protected]>
Tue, 26 Jul 2011 03:57:12 +0000 (20:57 -0700)
To make netconsole usable on UML, its ethernet driver needs netpoll
support.

Signed-off-by: Richard Weinberger <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
arch/um/drivers/net_kern.c

index 47d0c37897d5874d0bfb95d3d2b87441bd2df6a0..22745b47c82956c086d1dfff5fdd82be18dec3cc 100644 (file)
@@ -262,6 +262,15 @@ static int uml_net_change_mtu(struct net_device *dev, int new_mtu)
        return 0;
 }
 
+#ifdef CONFIG_NET_POLL_CONTROLLER
+static void uml_net_poll_controller(struct net_device *dev)
+{
+       disable_irq(dev->irq);
+       uml_net_interrupt(dev->irq, dev);
+       enable_irq(dev->irq);
+}
+#endif
+
 static void uml_net_get_drvinfo(struct net_device *dev,
                                struct ethtool_drvinfo *info)
 {
@@ -364,6 +373,9 @@ static const struct net_device_ops uml_netdev_ops = {
        .ndo_set_mac_address    = eth_mac_addr,
        .ndo_change_mtu         = uml_net_change_mtu,
        .ndo_validate_addr      = eth_validate_addr,
+#ifdef CONFIG_NET_POLL_CONTROLLER
+       .ndo_poll_controller = uml_net_poll_controller,
+#endif
 };
 
 /*