forked from luck/tmp_suning_uos_patched
batman-adv: Use proper name for fragments list head
The batman-adv codebase is using "list" for the list node (prev/next) and <list content descriptor>+"_list" for the head of a list. Not using this naming scheme can up in confusions because list_head is used for both the head of the list and the list node (prev/next) in each item of the list. Signed-off-by: Sven Eckelmann <sven@narfation.org> Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
This commit is contained in:
parent
422d2f7780
commit
176e5b772b
|
@ -73,7 +73,7 @@ void batadv_frag_purge_orig(struct batadv_orig_node *orig_node,
|
||||||
spin_lock_bh(&chain->lock);
|
spin_lock_bh(&chain->lock);
|
||||||
|
|
||||||
if (!check_cb || check_cb(chain)) {
|
if (!check_cb || check_cb(chain)) {
|
||||||
batadv_frag_clear_chain(&chain->head);
|
batadv_frag_clear_chain(&chain->fragment_list);
|
||||||
chain->size = 0;
|
chain->size = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -117,8 +117,8 @@ static bool batadv_frag_init_chain(struct batadv_frag_table_entry *chain,
|
||||||
if (chain->seqno == seqno)
|
if (chain->seqno == seqno)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (!hlist_empty(&chain->head))
|
if (!hlist_empty(&chain->fragment_list))
|
||||||
batadv_frag_clear_chain(&chain->head);
|
batadv_frag_clear_chain(&chain->fragment_list);
|
||||||
|
|
||||||
chain->size = 0;
|
chain->size = 0;
|
||||||
chain->seqno = seqno;
|
chain->seqno = seqno;
|
||||||
|
@ -176,7 +176,7 @@ static bool batadv_frag_insert_packet(struct batadv_orig_node *orig_node,
|
||||||
chain = &orig_node->fragments[bucket];
|
chain = &orig_node->fragments[bucket];
|
||||||
spin_lock_bh(&chain->lock);
|
spin_lock_bh(&chain->lock);
|
||||||
if (batadv_frag_init_chain(chain, seqno)) {
|
if (batadv_frag_init_chain(chain, seqno)) {
|
||||||
hlist_add_head(&frag_entry_new->list, &chain->head);
|
hlist_add_head(&frag_entry_new->list, &chain->fragment_list);
|
||||||
chain->size = skb->len - hdr_size;
|
chain->size = skb->len - hdr_size;
|
||||||
chain->timestamp = jiffies;
|
chain->timestamp = jiffies;
|
||||||
chain->total_size = ntohs(frag_packet->total_size);
|
chain->total_size = ntohs(frag_packet->total_size);
|
||||||
|
@ -185,7 +185,7 @@ static bool batadv_frag_insert_packet(struct batadv_orig_node *orig_node,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Find the position for the new fragment. */
|
/* Find the position for the new fragment. */
|
||||||
hlist_for_each_entry(frag_entry_curr, &chain->head, list) {
|
hlist_for_each_entry(frag_entry_curr, &chain->fragment_list, list) {
|
||||||
/* Drop packet if fragment already exists. */
|
/* Drop packet if fragment already exists. */
|
||||||
if (frag_entry_curr->no == frag_entry_new->no)
|
if (frag_entry_curr->no == frag_entry_new->no)
|
||||||
goto err_unlock;
|
goto err_unlock;
|
||||||
|
@ -220,11 +220,11 @@ static bool batadv_frag_insert_packet(struct batadv_orig_node *orig_node,
|
||||||
* exceeds the maximum size of one merged packet. Don't allow
|
* exceeds the maximum size of one merged packet. Don't allow
|
||||||
* packets to have different total_size.
|
* packets to have different total_size.
|
||||||
*/
|
*/
|
||||||
batadv_frag_clear_chain(&chain->head);
|
batadv_frag_clear_chain(&chain->fragment_list);
|
||||||
chain->size = 0;
|
chain->size = 0;
|
||||||
} else if (ntohs(frag_packet->total_size) == chain->size) {
|
} else if (ntohs(frag_packet->total_size) == chain->size) {
|
||||||
/* All fragments received. Hand over chain to caller. */
|
/* All fragments received. Hand over chain to caller. */
|
||||||
hlist_move_list(&chain->head, chain_out);
|
hlist_move_list(&chain->fragment_list, chain_out);
|
||||||
chain->size = 0;
|
chain->size = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -47,7 +47,7 @@ int batadv_frag_send_packet(struct sk_buff *skb,
|
||||||
static inline bool
|
static inline bool
|
||||||
batadv_frag_check_entry(struct batadv_frag_table_entry *frags_entry)
|
batadv_frag_check_entry(struct batadv_frag_table_entry *frags_entry)
|
||||||
{
|
{
|
||||||
if (!hlist_empty(&frags_entry->head) &&
|
if (!hlist_empty(&frags_entry->fragment_list) &&
|
||||||
batadv_has_timed_out(frags_entry->timestamp, BATADV_FRAG_TIMEOUT))
|
batadv_has_timed_out(frags_entry->timestamp, BATADV_FRAG_TIMEOUT))
|
||||||
return true;
|
return true;
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -1021,7 +1021,7 @@ struct batadv_orig_node *batadv_orig_node_new(struct batadv_priv *bat_priv,
|
||||||
batadv_orig_node_vlan_put(vlan);
|
batadv_orig_node_vlan_put(vlan);
|
||||||
|
|
||||||
for (i = 0; i < BATADV_FRAG_BUFFER_COUNT; i++) {
|
for (i = 0; i < BATADV_FRAG_BUFFER_COUNT; i++) {
|
||||||
INIT_HLIST_HEAD(&orig_node->fragments[i].head);
|
INIT_HLIST_HEAD(&orig_node->fragments[i].fragment_list);
|
||||||
spin_lock_init(&orig_node->fragments[i].lock);
|
spin_lock_init(&orig_node->fragments[i].lock);
|
||||||
orig_node->fragments[i].size = 0;
|
orig_node->fragments[i].size = 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -184,7 +184,7 @@ struct batadv_orig_ifinfo {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* struct batadv_frag_table_entry - head in the fragment buffer table
|
* struct batadv_frag_table_entry - head in the fragment buffer table
|
||||||
* @head: head of list with fragments
|
* @fragment_list: head of list with fragments
|
||||||
* @lock: lock to protect the list of fragments
|
* @lock: lock to protect the list of fragments
|
||||||
* @timestamp: time (jiffie) of last received fragment
|
* @timestamp: time (jiffie) of last received fragment
|
||||||
* @seqno: sequence number of the fragments in the list
|
* @seqno: sequence number of the fragments in the list
|
||||||
|
@ -192,8 +192,8 @@ struct batadv_orig_ifinfo {
|
||||||
* @total_size: expected size of the assembled packet
|
* @total_size: expected size of the assembled packet
|
||||||
*/
|
*/
|
||||||
struct batadv_frag_table_entry {
|
struct batadv_frag_table_entry {
|
||||||
struct hlist_head head;
|
struct hlist_head fragment_list;
|
||||||
spinlock_t lock; /* protects head */
|
spinlock_t lock; /* protects fragment_list */
|
||||||
unsigned long timestamp;
|
unsigned long timestamp;
|
||||||
u16 seqno;
|
u16 seqno;
|
||||||
u16 size;
|
u16 size;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user