The annotated tag, batman-adv-for-davem has been updated to 439dc0ded49c1c791e00c7fc0fdfb43690f97e38 (tag) from 72be4ac98384571e948f067f414bf7fc4d1e8594 (which is now obsolete) tagging 57ef970f0bbf3309af88b442ba16eaf7ed756f45 (commit) replaces v4.5-rc5 tagged by Antonio Quartulli on Sun Feb 28 04:00:11 2016 +0800
- Shortlog ------------------------------------------------------------ With this patchset we finally introduce our new routing protocol: B.A.T.M.A.N. V. Its implementation started quite some years ago, but due to the big changes being introduced it took a while to be discussed, designed, worked, re-worked, tested and debugged (well, we're never done with the latest). Such work has basically seen involved all the core contributors: namely Linus Lüssing, Marek Lindner, Simon Wunderlich, Sven Eckelmann and me.
The new protocol is divided into two main subcomponents, called respectively ELP and OGMv2. The former is in charge of dealing with the neighbour discovery and link quality estimation, while the latter implements the algorithm that spreads the metrics around the network and computes optimal paths.
The biggest change introduced with B.A.T.M.A.N. V is the new metric: the protocol won't rely on packet loss anymore, but it will use the estimated throughput extracted directly from the wifi driver (when available) by querying cfg80211. Batman-adv will also send some unicast probing packets when an interface is not used for payload traffic to make sure that such values are current.
The new protocol can be compiled-in or not like other features we have and when selected will pull in CFG80211 as dependency for the reason described above.
Thanks to the big work brought up in the past by Marek Lindner, batman-adv can easily deal several protocol implementations, therefore compiling in this new version does not exclude the older. This means that the user is offered the option to choose the protocol when creating the mesh interface (default is the old one to keep backward compatibility).
Along with the protocol there are some sysfs knobs that are introduced to fine tune some of its behaviours, but users are recommended to keep the default values unless they know what they are doing.
Andrew Lunn (1): batman-adv: Avoid endless loop in bat-on-bat netdevice check
Antonio Quartulli (12): batman-adv: fix kerneldoc for DAT functions batman-adv: fix kerneldoc for TT functions batman-adv: add kernel doc for AP isolation attributes in bat_priv batman-adv: remove unused BATADV_BONDING_TQ_THRESHOLD constant batman-adv: OGMv2 - add basic infrastructure batman-adv: OGMv2 - implement originators logic batman-adv: add throughput override attribute to hard_ifaces batman-adv: keep track of when unicast packets are sent batman-adv: ELP - compute the metric based on the estimated throughput batman-adv: ELP - send unicast ELP packets for throughput sampling batman-adv: B.A.T.M.A.N. V - implement neighbor comparison API calls batman-adv: B.A.T.M.A.N. V - implement bat_orig_print API
David S. Miller (4): Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Linus Luessing (5): batman-adv: Add hard_iface specific sysfs wrapper macros for UINT batman-adv: ELP - adding basic infrastructure batman-adv: ELP - creating neighbor structures batman-adv: ELP - adding sysfs parameter for elp interval batman-adv: B.A.T.M.A.N. V - implement bat_neigh_print API
Marek Lindner (1): batman-adv: kernel doc readability updates
Simon Wunderlich (4): batman-adv: Update/repair bridge loop avoidance kerneldoc batman-adv: add kerneldoc for batadv_iv_ogm_aggr_packet batman-adv: add seqno maximum age and protection start flag parameters batman-adv: Start new development cycle
Sven Eckelmann (51): batman-adv: Fix kerneldoc parsing of structs/enums batman-adv: Remove kerneldoc for missing parameters batman-adv: Fix names in kerneldoc of functions batman-adv: Drop invalid kerneldoc for variable batadv_vlan_attrs batman-adv: Fix kerneldoc parsing of return description batman-adv: Fix kerneldoc of main functions batman-adv: Fix kerneldoc of network-coding functions batman-adv: Fix kernel-doc for batadv_claim_free_ref batman-adv: update copyright years for 2016 batman-adv: Switch to HTTPS version of links batman-adv: Drop reference to netdevice on last reference batman-adv: Add lockdep assert for container_list_lock batman-adv: Convert batadv_hardif_neigh_node to kref batman-adv: Convert batadv_gw_node to kref batman-adv: Convert batadv_softif_vlan to kref batman-adv: Convert batadv_bla_backbone_gw to kref batman-adv: Convert batadv_bla_claim to kref batman-adv: Convert batadv_nc_node to kref batman-adv: Convert batadv_nc_path to kref batman-adv: Convert batadv_dat_entry to kref batman-adv: Convert batadv_tvlv_container to kref batman-adv: Convert batadv_tvlv_handler to kref batman-adv: Convert batadv_tt_orig_list_entry to kref batman-adv: Convert batadv_neigh_ifinfo to kref batman-adv: Convert batadv_orig_ifinfo to kref batman-adv: Convert batadv_neigh_node to kref batman-adv: Convert batadv_hard_iface to kref batman-adv: Convert batadv_orig_node_vlan to kref batman-adv: Convert batadv_orig_node to kref batman-adv: Convert batadv_tt_common_entry to kref batman-adv: Only put gw_node list reference when removed batman-adv: Only put orig_node_vlan list reference when removed batman-adv: Rename batadv_orig_node *_free_ref function to *_put batman-adv: Rename batadv_hardif *_free_ref function to *_put batman-adv: Rename batadv_neigh_node *_free_ref function to *_put batman-adv: Rename batadv_neigh_ifinfo *_free_ref function to *_put batman-adv: Rename batadv_orig_ifinfo *_free_ref function to *_put batman-adv: Rename batadv_hardif_neigh *_free_ref function to *_put batman-adv: Rename batadv_backbone_gw *_free_ref function to *_put batman-adv: Rename batadv_claim *_free_ref function to *_put batman-adv: Rename batadv_dat_entry *_free_ref function to *_put batman-adv: Rename batadv_gw_node *_free_ref function to *_put batman-adv: Rename batadv_tvlv_handler *_free_ref function to *_put batman-adv: Rename batadv_tvlv_container *_free_ref function to *_put batman-adv: Rename batadv_softif_vlan *_free_ref function to *_put batman-adv: Rename batadv_nc_node *_free_ref function to *_put batman-adv: Rename batadv_nc_path *_free_ref function to *_put batman-adv: Rename batadv_orig_node_vlan *_free_ref function to *_put batman-adv: Rename batadv_tt_local_entry *_free_ref function to *_put batman-adv: Rename batadv_tt_global_entry *_free_ref function to *_put batman-adv: Rename batadv_tt_orig_list_entry *_free_ref function to *_put
-----------------------------------------------------------------------