Searched refs:l2_accel (Results 1 - 4 of 4) sorted by relevance
/linux-4.1.27/drivers/net/ethernet/intel/fm10k/ |
H A D | fm10k_netdev.c | 1205 struct fm10k_l2_accel *l2_accel) fm10k_assign_l2_accel() 1212 rcu_assign_pointer(ring->l2_accel, l2_accel); fm10k_assign_l2_accel() 1215 interface->l2_accel = l2_accel; fm10k_assign_l2_accel() 1222 struct fm10k_l2_accel *l2_accel = interface->l2_accel; fm10k_dfwd_add_station() local 1230 if (!l2_accel) { fm10k_dfwd_add_station() 1231 /* verify there is enough free GLORTs to support l2_accel */ fm10k_dfwd_add_station() 1236 l2_accel = kzalloc(size, GFP_KERNEL); fm10k_dfwd_add_station() 1237 if (!l2_accel) fm10k_dfwd_add_station() 1240 l2_accel->size = 7; fm10k_dfwd_add_station() 1241 l2_accel->dglort = interface->glort; fm10k_dfwd_add_station() 1244 fm10k_assign_l2_accel(interface, l2_accel); fm10k_dfwd_add_station() 1246 } else if ((l2_accel->count == FM10K_MAX_STATIONS) || fm10k_dfwd_add_station() 1247 (l2_accel->count == (interface->glort_count - 1))) { fm10k_dfwd_add_station() 1250 } else if (l2_accel->count == l2_accel->size) { fm10k_dfwd_add_station() 1251 old_l2_accel = l2_accel; fm10k_dfwd_add_station() 1253 macvlan[(l2_accel->size * 2) + 1]); fm10k_dfwd_add_station() 1254 l2_accel = kzalloc(size, GFP_KERNEL); fm10k_dfwd_add_station() 1255 if (!l2_accel) fm10k_dfwd_add_station() 1258 memcpy(l2_accel, old_l2_accel, fm10k_dfwd_add_station() 1262 l2_accel->size = (old_l2_accel->size * 2) + 1; fm10k_dfwd_add_station() 1265 fm10k_assign_l2_accel(interface, l2_accel); fm10k_dfwd_add_station() 1270 for (i = 0; i < l2_accel->size; i++) { fm10k_dfwd_add_station() 1271 if (!l2_accel->macvlan[i]) fm10k_dfwd_add_station() 1276 l2_accel->macvlan[i] = sdev; fm10k_dfwd_add_station() 1277 l2_accel->count++; fm10k_dfwd_add_station() 1285 dglort.shared_l = fls(l2_accel->size); fm10k_dfwd_add_station() 1291 glort = l2_accel->dglort + 1 + i; fm10k_dfwd_add_station() 1303 struct fm10k_l2_accel *l2_accel = ACCESS_ONCE(interface->l2_accel); fm10k_dfwd_del_station() local 1310 if (!l2_accel) fm10k_dfwd_del_station() 1314 for (i = 0; i < l2_accel->size; i++) { fm10k_dfwd_del_station() 1315 if (l2_accel->macvlan[i] == sdev) fm10k_dfwd_del_station() 1320 if (i == l2_accel->size) fm10k_dfwd_del_station() 1326 glort = l2_accel->dglort + 1 + i; fm10k_dfwd_del_station() 1333 l2_accel->macvlan[i] = NULL; fm10k_dfwd_del_station() 1334 l2_accel->count--; fm10k_dfwd_del_station() 1342 if (l2_accel) fm10k_dfwd_del_station() 1343 dglort.shared_l = fls(l2_accel->size); fm10k_dfwd_del_station() 1347 if (l2_accel->count == 0) { fm10k_dfwd_del_station() 1349 kfree_rcu(l2_accel, rcu); fm10k_dfwd_del_station() 1204 fm10k_assign_l2_accel(struct fm10k_intfc *interface, struct fm10k_l2_accel *l2_accel) fm10k_assign_l2_accel() argument
|
H A D | fm10k_main.c | 429 struct fm10k_l2_accel *l2_accel = rcu_dereference_bh(rx_ring->l2_accel); fm10k_type_trans() local 432 if (l2_accel) { fm10k_type_trans() 435 idx -= l2_accel->dglort; fm10k_type_trans() 436 if (idx < l2_accel->size && l2_accel->macvlan[idx]) fm10k_type_trans() 437 dev = l2_accel->macvlan[idx]; fm10k_type_trans() 439 l2_accel = NULL; fm10k_type_trans() 444 if (!l2_accel) fm10k_type_trans() 1647 rcu_assign_pointer(ring->l2_accel, interface->l2_accel); fm10k_alloc_q_vector()
|
H A D | fm10k.h | 116 struct fm10k_l2_accel __rcu *l2_accel; /* L2 acceleration list */ member in struct:fm10k_ring 244 struct fm10k_l2_accel *l2_accel; /* pointer to L2 acceleration list */ member in struct:fm10k_intfc
|
H A D | fm10k_pci.c | 770 if (interface->l2_accel) fm10k_configure_dglort() 771 dglort.shared_l = fls(interface->l2_accel->size); fm10k_configure_dglort()
|
Completed in 98 milliseconds