Skip to content

Commit 9400c53

Browse files
julianwiedmanndavem330
authored andcommitted
s390/qeth: no VLAN support on OSM
Instead of silently discarding VLAN registration requests on OSM, just indicate that this card type doesn't support VLAN. Signed-off-by: Julian Wiedmann <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 857d8ee commit 9400c53

File tree

1 file changed

+6
-11
lines changed

1 file changed

+6
-11
lines changed

drivers/s390/net/qeth_l2_main.c

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -348,10 +348,6 @@ static int qeth_l2_vlan_rx_add_vid(struct net_device *dev,
348348
QETH_CARD_TEXT_(card, 4, "aid:%d", vid);
349349
if (!vid)
350350
return 0;
351-
if (card->info.type == QETH_CARD_TYPE_OSM) {
352-
QETH_CARD_TEXT(card, 3, "aidOSM");
353-
return 0;
354-
}
355351
if (qeth_wait_for_threads(card, QETH_RECOVER_THREAD)) {
356352
QETH_CARD_TEXT(card, 3, "aidREC");
357353
return 0;
@@ -381,10 +377,6 @@ static int qeth_l2_vlan_rx_kill_vid(struct net_device *dev,
381377
int rc = 0;
382378

383379
QETH_CARD_TEXT_(card, 4, "kid:%d", vid);
384-
if (card->info.type == QETH_CARD_TYPE_OSM) {
385-
QETH_CARD_TEXT(card, 3, "kidOSM");
386-
return 0;
387-
}
388380
if (qeth_wait_for_threads(card, QETH_RECOVER_THREAD)) {
389381
QETH_CARD_TEXT(card, 3, "kidREC");
390382
return 0;
@@ -1010,7 +1002,11 @@ static int qeth_l2_setup_netdev(struct qeth_card *card)
10101002
} else {
10111003
card->dev->ethtool_ops = &qeth_l2_ethtool_ops;
10121004
}
1013-
card->dev->features |= NETIF_F_HW_VLAN_CTAG_FILTER;
1005+
1006+
if (card->info.type == QETH_CARD_TYPE_OSM)
1007+
card->dev->features |= NETIF_F_VLAN_CHALLENGED;
1008+
else
1009+
card->dev->features |= NETIF_F_HW_VLAN_CTAG_FILTER;
10141010
if (card->info.type == QETH_CARD_TYPE_OSD && !card->info.guestlan) {
10151011
card->dev->hw_features = NETIF_F_SG;
10161012
card->dev->vlan_features = NETIF_F_SG;
@@ -1120,8 +1116,7 @@ static int __qeth_l2_set_online(struct ccwgroup_device *gdev, int recovery_mode)
11201116
goto out_remove;
11211117
}
11221118

1123-
if (card->info.type != QETH_CARD_TYPE_OSN &&
1124-
card->info.type != QETH_CARD_TYPE_OSM)
1119+
if (card->info.type != QETH_CARD_TYPE_OSN)
11251120
qeth_l2_process_vlans(card);
11261121

11271122
netif_tx_disable(card->dev);

0 commit comments

Comments
 (0)