| 4450 | } |
| 4451 | |
| 4452 | static void |
| 4453 | iflib_vlan_unregister(void *arg, if_t ifp, uint16_t vtag) |
| 4454 | { |
| 4455 | if_ctx_t ctx = if_getsoftc(ifp); |
| 4456 | |
| 4457 | if ((void *)ctx != arg) |
| 4458 | return; |
| 4459 | |
| 4460 | if ((vtag == 0) || (vtag > 4095)) |
| 4461 | return; |
| 4462 | |
| 4463 | CTX_LOCK(ctx); |
| 4464 | /* Driver may need all tagged packets to be flushed */ |
| 4465 | if (IFDI_NEEDS_RESTART(ctx, IFLIB_RESTART_VLAN_CONFIG)) |
| 4466 | iflib_stop(ctx); |
| 4467 | IFDI_VLAN_UNREGISTER(ctx, vtag); |
| 4468 | /* Re-init to load the changes, if required */ |
| 4469 | if (IFDI_NEEDS_RESTART(ctx, IFLIB_RESTART_VLAN_CONFIG)) |
| 4470 | iflib_init_locked(ctx); |
| 4471 | CTX_UNLOCK(ctx); |
| 4472 | } |
| 4473 | |
| 4474 | static void |
| 4475 | iflib_led_func(void *arg, int onoff) |
nothing calls this directly
no test coverage detected