On Dienstag, 20. September 2016 14:12:43 CEST Linus Lüssing wrote: [...] > /** > + * batadv_v_elp_update_neigh_hash - updates neighborhood hash related data > + * @hard_iface: interface which the data has to be prepared for > + * > + * Firstly, this function updates the neighborhood hash of a hard interface. > + * That is it resummarizes the present neighborhood into one compact hash > + * representation. > + * > + * Secondly, minimum and maximum throughput values within this neighorhood are > + * updated. > + */ > +static void batadv_v_elp_update_neigh_hash(struct batadv_hard_iface *hard_iface) > +{ > + struct batadv_priv *bat_priv = netdev_priv(hard_iface->soft_iface); > + struct batadv_hardif_neigh_node *hardif_neigh; > + struct ewma_throughput *ewma_throughput; > + u8 *own_addr = hard_iface->net_dev->dev_addr; > + u32 min_throughput = ~((u32)0), max_throughput = 0; > + u32 throughput; > + int ret; > + > + SHASH_DESC_ON_STACK(shash, tfm); This macro doesn't exist on Linux < v3.18. Can you please add it to compat-include/crypto/hash.h? [...] > +/** > + * batadv_tvlv_nhh_data - neighborhood hash data > + * @min_throughput: worst of all TX throughputs this neighbor has to others > + * @max_throughput: best of all TX throughputs this neighbor has to others > + * @neigh_hash: a sha512 hash of all neighbors this neighbor sees > + * (hash over the alphabetically ordered, concatenated, binary representation) > + */ > +struct batadv_tvlv_nhh_data { > + __be32 min_throughput; > + __be32 max_throughput; > + u8 neigh_hash[SHA512_DIGEST_SIZE]; > +}; > + Please use "struct batadv_tvlv_nhh_data - neighborhood hash data" in kernel-doc block Kind regards, Sven