From: Murali Karicheri <m-karicheri2@xxxxxx> Date: Mon, 24 Aug 2020 13:01:00 -0400 > + ret = cpsw_ale_del_vlan(cpsw->ale, vid, 0); > + if (ret) > + dev_err(priv->dev, "%s: failed %d: ret %d\n", > + __func__, __LINE__, ret); > + ret = cpsw_ale_del_ucast(cpsw->ale, priv->mac_addr, > + HOST_PORT_NUM, ALE_VLAN, vid); > + if (ret) > + dev_err(priv->dev, "%s: failed %d: ret %d\n", > + __func__, __LINE__, ret); > + ret = cpsw_ale_del_mcast(cpsw->ale, priv->ndev->broadcast, > + 0, ALE_VLAN, vid); > + if (ret) > + dev_err(priv->dev, "%s: failed %d: ret %d\n", > + __func__, __LINE__, ret); > cpsw_ale_flush_multicast(cpsw->ale, ALE_PORT_HOST, vid); These error messages are extremely unhelpful. You're calling three different functions, yet emitting basically the same __func__ for each of those cases. No user can send you a useful bug report immediately if they just have func and line. Please get rid of the "__func__" and "__line__" stuff completely, it's never advisable to ever use that in my opinion. Instead, describe which delete operation failed, optionally with the error return.