|
@@ -253,11 +253,8 @@ static int qlcnic_fdb_del(struct ndmsg *ndm, struct nlattr *tb[],
|
|
|
struct qlcnic_adapter *adapter = netdev_priv(netdev);
|
|
|
int err = -EOPNOTSUPP;
|
|
|
|
|
|
- if (!adapter->fdb_mac_learn) {
|
|
|
- pr_info("%s: Driver mac learn is enabled, FDB operation not allowed\n",
|
|
|
- __func__);
|
|
|
- return err;
|
|
|
- }
|
|
|
+ if (!adapter->fdb_mac_learn)
|
|
|
+ return ndo_dflt_fdb_del(ndm, tb, netdev, addr);
|
|
|
|
|
|
if (adapter->flags & QLCNIC_ESWITCH_ENABLED) {
|
|
|
if (is_unicast_ether_addr(addr))
|
|
@@ -277,11 +274,8 @@ static int qlcnic_fdb_add(struct ndmsg *ndm, struct nlattr *tb[],
|
|
|
struct qlcnic_adapter *adapter = netdev_priv(netdev);
|
|
|
int err = 0;
|
|
|
|
|
|
- if (!adapter->fdb_mac_learn) {
|
|
|
- pr_info("%s: Driver mac learn is enabled, FDB operation not allowed\n",
|
|
|
- __func__);
|
|
|
- return -EOPNOTSUPP;
|
|
|
- }
|
|
|
+ if (!adapter->fdb_mac_learn)
|
|
|
+ return ndo_dflt_fdb_add(ndm, tb, netdev, addr, flags);
|
|
|
|
|
|
if (!(adapter->flags & QLCNIC_ESWITCH_ENABLED)) {
|
|
|
pr_info("%s: FDB e-switch is not enabled\n", __func__);
|
|
@@ -306,11 +300,8 @@ static int qlcnic_fdb_dump(struct sk_buff *skb, struct netlink_callback *ncb,
|
|
|
{
|
|
|
struct qlcnic_adapter *adapter = netdev_priv(netdev);
|
|
|
|
|
|
- if (!adapter->fdb_mac_learn) {
|
|
|
- pr_info("%s: Driver mac learn is enabled, FDB operation not allowed\n",
|
|
|
- __func__);
|
|
|
- return -EOPNOTSUPP;
|
|
|
- }
|
|
|
+ if (!adapter->fdb_mac_learn)
|
|
|
+ return ndo_dflt_fdb_dump(skb, ncb, netdev, idx);
|
|
|
|
|
|
if (adapter->flags & QLCNIC_ESWITCH_ENABLED)
|
|
|
idx = ndo_dflt_fdb_dump(skb, ncb, netdev, idx);
|