Lines Matching refs:p

97 	struct inet_peer *p;  in lookup()  local
109 p = rb_entry(parent, struct inet_peer, rb_node); in lookup()
110 cmp = inetpeer_addr_cmp(daddr, &p->daddr); in lookup()
113 if (READ_ONCE(p->dtime) != now) in lookup()
114 WRITE_ONCE(p->dtime, now); in lookup()
115 return p; in lookup()
119 gc_stack[(*gc_cnt)++] = p; in lookup()
139 struct inet_peer *p; in inet_peer_gc() local
153 p = gc_stack[i]; in inet_peer_gc()
155 delta = (__u32)jiffies - READ_ONCE(p->dtime); in inet_peer_gc()
157 if (delta < ttl || !refcount_dec_if_one(&p->refcnt)) in inet_peer_gc()
161 p = gc_stack[i]; in inet_peer_gc()
162 if (p) { in inet_peer_gc()
163 rb_erase(&p->rb_node, &base->rb_root); in inet_peer_gc()
165 kfree_rcu(p, rcu); in inet_peer_gc()
174 struct inet_peer *p, *gc_stack[PEER_MAX_GC]; in inet_getpeer() local
182 p = lookup(daddr, base, seq, NULL, &gc_cnt, &parent, &pp); in inet_getpeer()
184 if (p) in inet_getpeer()
185 return p; in inet_getpeer()
194 p = lookup(daddr, base, seq, gc_stack, &gc_cnt, &parent, &pp); in inet_getpeer()
195 if (!p) { in inet_getpeer()
196 p = kmem_cache_alloc(peer_cachep, GFP_ATOMIC); in inet_getpeer()
197 if (p) { in inet_getpeer()
198 p->daddr = *daddr; in inet_getpeer()
199 p->dtime = (__u32)jiffies; in inet_getpeer()
200 refcount_set(&p->refcnt, 1); in inet_getpeer()
201 atomic_set(&p->rid, 0); in inet_getpeer()
202 p->metrics[RTAX_LOCK-1] = INETPEER_METRICS_NEW; in inet_getpeer()
203 p->rate_tokens = 0; in inet_getpeer()
204 p->n_redirects = 0; in inet_getpeer()
208 p->rate_last = jiffies - 60*HZ; in inet_getpeer()
210 rb_link_node(&p->rb_node, parent, pp); in inet_getpeer()
211 rb_insert_color(&p->rb_node, &base->rb_root); in inet_getpeer()
219 return p; in inet_getpeer()
223 void inet_putpeer(struct inet_peer *p) in inet_putpeer() argument
225 if (refcount_dec_and_test(&p->refcnt)) in inet_putpeer()
226 kfree_rcu(p, rcu); in inet_putpeer()
276 struct rb_node *p = rb_first(&base->rb_root); in inetpeer_invalidate_tree() local
278 while (p) { in inetpeer_invalidate_tree()
279 struct inet_peer *peer = rb_entry(p, struct inet_peer, rb_node); in inetpeer_invalidate_tree()
281 p = rb_next(p); in inetpeer_invalidate_tree()