Commit 92c90dff authored by Shannon Nelson's avatar Shannon Nelson Committed by David S. Miller

ionic: fill mac addr earlier in add_addr

Make sure the ctx struct has the new mac address before
any save operations happen.
Signed-off-by: default avatarShannon Nelson <snelson@pensando.io>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 970dfbf4
...@@ -1268,6 +1268,8 @@ int ionic_lif_addr_add(struct ionic_lif *lif, const u8 *addr) ...@@ -1268,6 +1268,8 @@ int ionic_lif_addr_add(struct ionic_lif *lif, const u8 *addr)
struct ionic_rx_filter *f; struct ionic_rx_filter *f;
int err = 0; int err = 0;
memcpy(ctx.cmd.rx_filter_add.mac.addr, addr, ETH_ALEN);
spin_lock_bh(&lif->rx_filters.lock); spin_lock_bh(&lif->rx_filters.lock);
f = ionic_rx_filter_by_addr(lif, addr); f = ionic_rx_filter_by_addr(lif, addr);
if (f) { if (f) {
...@@ -1281,7 +1283,6 @@ int ionic_lif_addr_add(struct ionic_lif *lif, const u8 *addr) ...@@ -1281,7 +1283,6 @@ int ionic_lif_addr_add(struct ionic_lif *lif, const u8 *addr)
f->state = IONIC_FILTER_STATE_SYNCED; f->state = IONIC_FILTER_STATE_SYNCED;
} else { } else {
/* save as SYNCED to catch any DEL requests while processing */ /* save as SYNCED to catch any DEL requests while processing */
memcpy(ctx.cmd.rx_filter_add.mac.addr, addr, ETH_ALEN);
err = ionic_rx_filter_save(lif, 0, IONIC_RXQ_INDEX_ANY, 0, &ctx, err = ionic_rx_filter_save(lif, 0, IONIC_RXQ_INDEX_ANY, 0, &ctx,
IONIC_FILTER_STATE_SYNCED); IONIC_FILTER_STATE_SYNCED);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment