batadv_v_forward_penalty(9)
okay bestie, welcome to the batadv_v_forward_penalty(9) page from the Kernel API Manual β¨ this one is literally about applying a penalty to the throughput metric forwarded with B.A.T.M.A.N. V OGMs π¦
β¨ NAME β¨
batadv_v_forward_penalty β apply a penalty to the throughput metric forwarded with B.A.T.M.A.N. V OGMs π
πΈ SYNOPSIS πΈ
u32 batadv_v_forward_penalty (struct batadv_priv *bat_priv , struct
batadv_hard_iface *if_incoming , struct batadv_hard_iface *if_outgoing ,
u32 throughput );
π ARGUMENTS π
bat_privβ the bat priv with all the mesh interface information πif_incomingβ the interface where the OGM has been received π₯if_outgoingβ the interface where the OGM has to be forwarded to π€throughputβ the current throughput π
π DESCRIPTION π
okay so this function applies a penalty on the current throughput metric value based on the characteristic of the interface where the OGM has been received. no cap, that's the vibe check π«Ά
Initially the per hardif hop penalty is applied to the throughput. After that the return value is then computed as follows:
throughput * 50%β if the incoming and outgoing interface are the same WiFi interface and the throughput is above1MBit/sπ₯throughputβ if the outgoing interface is the default interface (i.e. this OGM is processed for the internal table and not forwarded) π§throughput * node hop penaltyβ otherwise π
π₯ RETURN π₯
the penalised throughput metric ππ
π¦ SEE ALSO π¦
Kernel file ./net/batman-adv/bat_v_ogm.c π
batadv_v_ogm_orig_get(9)batadv_v_ogm_start_queue_timer(9)batadv_v_ogm_start_timer(9)batadv_v_ogm_send_to_if(9)batadv_v_ogm_len(9)batadv_v_ogm_queue_left(9)batadv_v_ogm_aggr_list_free(9)batadv_v_ogm_aggr_send(9)batadv_v_ogm_queue_on_if(9)batadv_v_ogm_send_meshif(9)batadv_v_ogm_send(9)batadv_v_ogm_aggr_work(9)batadv_v_ogm_iface_enable(9)batadv_v_ogm_iface_disable(9)batadv_v_ogm_primary_iface_set(9)batadv_v_ogm_forward(9)batadv_v_ogm_metric_update(9)batadv_v_ogm_route_update(9)batadv_v_ogm_process_per_outif(9)batadv_v_ogm_aggr_packet(9)batadv_v_ogm_process(9)batadv_v_ogm_packet_recv(9)batadv_v_ogm_init(9)batadv_v_ogm_free(9)
and that's the whole page, bestie π this iconic lil manual comes from source ./net/batman-adv, dated October 2026, and it's literally the batadv_v_forward_penalty(9) page πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms