Lines Matching defs:hh
564 struct hh_cache *hh;
578 while ((hh = neigh->hh) != NULL) {
579 neigh->hh = hh->hh_next;
580 hh->hh_next = NULL;
582 write_seqlock_bh(&hh->hh_lock);
583 hh->hh_output = neigh_blackhole;
584 write_sequnlock_bh(&hh->hh_lock);
585 if (atomic_dec_and_test(&hh->hh_refcnt))
586 kfree(hh);
607 struct hh_cache *hh;
613 for (hh = neigh->hh; hh; hh = hh->hh_next)
614 hh->hh_output = neigh->ops->output;
624 struct hh_cache *hh;
630 for (hh = neigh->hh; hh; hh = hh->hh_next)
631 hh->hh_output = neigh->ops->hh_output;
898 struct hh_cache *hh;
903 for (hh = neigh->hh; hh; hh = hh->hh_next) {
904 write_seqlock_bh(&hh->hh_lock);
905 update(hh, neigh->dev, neigh->ha);
906 write_sequnlock_bh(&hh->hh_lock);
1088 struct hh_cache *hh;
1091 for (hh = n->hh; hh; hh = hh->hh_next)
1092 if (hh->hh_type == protocol)
1095 if (!hh && (hh = kzalloc(sizeof(*hh), GFP_ATOMIC)) != NULL) {
1096 seqlock_init(&hh->hh_lock);
1097 hh->hh_type = protocol;
1098 atomic_set(&hh->hh_refcnt, 0);
1099 hh->hh_next = NULL;
1100 if (dev->hard_header_cache(n, hh)) {
1101 kfree(hh);
1102 hh = NULL;
1104 atomic_inc(&hh->hh_refcnt);
1105 hh->hh_next = n->hh;
1106 n->hh = hh;
1108 hh->hh_output = n->ops->hh_output;
1110 hh->hh_output = n->ops->output;
1113 if (hh) {
1114 atomic_inc(&hh->hh_refcnt);
1115 dst->hh = hh;
1155 if (dev->hard_header_cache && !dst->hh) {
1157 if (!dst->hh)
1184 /* As fast as possible without hh cache */