|
@@ -9690,8 +9690,13 @@ static int i40e_config_netdev(struct i40e_vsi *vsi)
|
|
|
i40e_add_mac_filter(vsi, mac_addr);
|
|
|
spin_unlock_bh(&vsi->mac_filter_hash_lock);
|
|
|
} else {
|
|
|
- /* relate the VSI_VMDQ name to the VSI_MAIN name */
|
|
|
- snprintf(netdev->name, IFNAMSIZ, "%sv%%d",
|
|
|
+ /* Relate the VSI_VMDQ name to the VSI_MAIN name. Note that we
|
|
|
+ * are still limited by IFNAMSIZ, but we're adding 'v%d\0' to
|
|
|
+ * the end, which is 4 bytes long, so force truncation of the
|
|
|
+ * original name by IFNAMSIZ - 4
|
|
|
+ */
|
|
|
+ snprintf(netdev->name, IFNAMSIZ, "%.*sv%%d",
|
|
|
+ IFNAMSIZ - 4,
|
|
|
pf->vsi[pf->lan_vsi]->netdev->name);
|
|
|
random_ether_addr(mac_addr);
|
|
|
|