qeth: scheduling while atomic during ifconfig online sequence
authorFrank Blaschka <frank.blaschka@de.ibm.com>
Wed, 26 Aug 2009 02:01:07 +0000 (02:01 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 27 Aug 2009 00:34:16 +0000 (17:34 -0700)
In case the IP address list contains entries (not removed when the device was set
offline) this entries should be registered next time the device is brought online.
In the past this was done implicitly with the device open call but since we wait
in the set IPv4 IPA and the device open common code holds various locks this
does not work any longer.

Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/s390/net/qeth_l3_main.c

index 048defa..77e04b7 100644 (file)
@@ -3180,6 +3180,7 @@ static int __qeth_l3_set_online(struct ccwgroup_device *gdev, int recovery_mode)
        netif_carrier_on(card->dev);
 
        qeth_set_allowed_threads(card, 0xffffffff, 0);
+       qeth_l3_set_ip_addr_list(card);
        if (recover_flag == CARD_STATE_RECOVER) {
                if (recovery_mode)
                        qeth_l3_open(card->dev);