s390/qeth: tolerate error when querying card info
authorJulian Wiedmann <jwi@linux.ibm.com>
Tue, 17 Nov 2020 16:15:15 +0000 (17:15 +0100)
committerJakub Kicinski <kuba@kernel.org>
Thu, 19 Nov 2020 01:34:18 +0000 (17:34 -0800)
By the time that our .get_link_ksettings() code issues a QUERY CARD INFO
cmd to get link-related information, we already set up a good amount of
static link data.

Return this data when the cmd fails, same as when the cmd is not
supported.

Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/s390/net/qeth_ethtool.c

index b5caa723326ea4d5caa1783a5060e79b46b3c7f0..b843df2c14b171f5e4c1ace7ad088fe8d49d90dc 100644 (file)
@@ -413,7 +413,6 @@ static int qeth_get_link_ksettings(struct net_device *netdev,
        struct qeth_card *card = netdev->ml_priv;
        enum qeth_link_types link_type;
        struct carrier_info carrier_info;
-       int rc;
 
        if (IS_IQD(card) || IS_VM_NIC(card))
                link_type = QETH_LINK_TYPE_10GBIT_ETH;
@@ -455,12 +454,8 @@ static int qeth_get_link_ksettings(struct net_device *netdev,
        /* Check if we can obtain more accurate information.     */
        /* If QUERY_CARD_INFO command is not supported or fails, */
        /* just return the heuristics that was filled above.     */
-       rc = qeth_query_card_info(card, &carrier_info);
-       if (rc == -EOPNOTSUPP) /* for old hardware, return heuristic */
+       if (qeth_query_card_info(card, &carrier_info))
                return 0;
-       if (rc) /* report error from the hardware operation */
-               return rc;
-       /* on success, fill in the information got from the hardware */
 
        netdev_dbg(netdev,
        "card info: card_type=0x%02x, port_mode=0x%04x, port_speed=0x%08x\n",