OSDN Git Service

s390/qeth: query IPv6 assists during hardsetup
authorKittipon Meesompop <kmeesomp@linux.vnet.ibm.com>
Thu, 26 Apr 2018 07:42:20 +0000 (09:42 +0200)
committerDavid S. Miller <davem@davemloft.net>
Fri, 27 Apr 2018 17:38:49 +0000 (13:38 -0400)
For new functionality, the L2 subdriver will start using IPv6 assists.
So move the query from the L3 subdriver into the common setup path.

Signed-off-by: Kittipon Meesompop <kmeesomp@linux.vnet.ibm.com>
Signed-off-by: Julian Wiedmann <jwi@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/s390/net/qeth_core_main.c
drivers/s390/net/qeth_l3_main.c

index b90f38d..9ec1bb7 100644 (file)
@@ -5201,6 +5201,11 @@ retriable:
        rc = qeth_query_ipassists(card, QETH_PROT_IPV4);
        if (rc == -ENOMEM)
                goto out;
+       if (qeth_is_supported(card, IPA_IPV6)) {
+               rc = qeth_query_ipassists(card, QETH_PROT_IPV6);
+               if (rc == -ENOMEM)
+                       goto out;
+       }
        if (qeth_is_supported(card, IPA_SETADAPTERPARMS)) {
                rc = qeth_query_setadapterparms(card);
                if (rc < 0) {
index bc359e3..9d9c743 100644 (file)
@@ -851,14 +851,6 @@ static int qeth_l3_softsetup_ipv6(struct qeth_card *card)
 
        QETH_CARD_TEXT(card, 3, "softipv6");
 
-       rc = qeth_query_ipassists(card, QETH_PROT_IPV6);
-       if (rc) {
-               dev_err(&card->gdev->dev,
-                       "Activating IPv6 support for %s failed\n",
-                       QETH_CARD_IFNAME(card));
-               return rc;
-       }
-
        if (card->info.type == QETH_CARD_TYPE_IQD)
                goto out;