aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/cxgb4/l2t.c
diff options
context:
space:
mode:
authorGlenn Elliott <gelliott@cs.unc.edu>2012-03-04 19:47:13 -0500
committerGlenn Elliott <gelliott@cs.unc.edu>2012-03-04 19:47:13 -0500
commitc71c03bda1e86c9d5198c5d83f712e695c4f2a1e (patch)
treeecb166cb3e2b7e2adb3b5e292245fefd23381ac8 /drivers/net/cxgb4/l2t.c
parentea53c912f8a86a8567697115b6a0d8152beee5c8 (diff)
parent6a00f206debf8a5c8899055726ad127dbeeed098 (diff)
Merge branch 'mpi-master' into wip-k-fmlpwip-k-fmlp
Conflicts: litmus/sched_cedf.c
Diffstat (limited to 'drivers/net/cxgb4/l2t.c')
-rw-r--r--drivers/net/cxgb4/l2t.c34
1 files changed, 0 insertions, 34 deletions
diff --git a/drivers/net/cxgb4/l2t.c b/drivers/net/cxgb4/l2t.c
index e8f0f55e9d08..a2d323c473f8 100644
--- a/drivers/net/cxgb4/l2t.c
+++ b/drivers/net/cxgb4/l2t.c
@@ -481,40 +481,6 @@ void t4_l2t_update(struct adapter *adap, struct neighbour *neigh)
481 handle_failed_resolution(adap, arpq); 481 handle_failed_resolution(adap, arpq);
482} 482}
483 483
484/*
485 * Allocate an L2T entry for use by a switching rule. Such entries need to be
486 * explicitly freed and while busy they are not on any hash chain, so normal
487 * address resolution updates do not see them.
488 */
489struct l2t_entry *t4_l2t_alloc_switching(struct l2t_data *d)
490{
491 struct l2t_entry *e;
492
493 write_lock_bh(&d->lock);
494 e = alloc_l2e(d);
495 if (e) {
496 spin_lock(&e->lock); /* avoid race with t4_l2t_free */
497 e->state = L2T_STATE_SWITCHING;
498 atomic_set(&e->refcnt, 1);
499 spin_unlock(&e->lock);
500 }
501 write_unlock_bh(&d->lock);
502 return e;
503}
504
505/*
506 * Sets/updates the contents of a switching L2T entry that has been allocated
507 * with an earlier call to @t4_l2t_alloc_switching.
508 */
509int t4_l2t_set_switching(struct adapter *adap, struct l2t_entry *e, u16 vlan,
510 u8 port, u8 *eth_addr)
511{
512 e->vlan = vlan;
513 e->lport = port;
514 memcpy(e->dmac, eth_addr, ETH_ALEN);
515 return write_l2e(adap, e, 0);
516}
517
518struct l2t_data *t4_init_l2t(void) 484struct l2t_data *t4_init_l2t(void)
519{ 485{
520 int i; 486 int i;