Lines Matching refs:tcp_probe
74 } tcp_probe;
79 return (tcp_probe.head - tcp_probe.tail) & (bufsize - 1);
100 (full || tp->snd_cwnd != tcp_probe.lastcwnd)) {
102 spin_lock(&tcp_probe.lock);
105 struct tcp_log *p = tcp_probe.log + tcp_probe.head;
120 tcp_probe.head = (tcp_probe.head + 1) & (bufsize - 1);
122 tcp_probe.lastcwnd = tp->snd_cwnd;
123 spin_unlock(&tcp_probe.lock);
125 wake_up(&tcp_probe.wait);
142 spin_lock_bh(&tcp_probe.lock);
143 tcp_probe.head = tcp_probe.tail = 0;
144 tcp_probe.start = ktime_get();
145 spin_unlock_bh(&tcp_probe.lock);
153 = tcp_probe.log + tcp_probe.tail;
155 = ktime_to_timespec(ktime_sub(p->tstamp, tcp_probe.start));
181 error = wait_event_interruptible(tcp_probe.wait,
186 spin_lock_bh(&tcp_probe.lock);
187 if (tcp_probe.head == tcp_probe.tail) {
189 spin_unlock_bh(&tcp_probe.lock);
196 tcp_probe.tail = (tcp_probe.tail + 1) & (bufsize - 1);
198 spin_unlock_bh(&tcp_probe.lock);
223 init_waitqueue_head(&tcp_probe.wait);
224 spin_lock_init(&tcp_probe.lock);
230 tcp_probe.log = kcalloc(bufsize, sizeof(struct tcp_log), GFP_KERNEL);
231 if (!tcp_probe.log)
246 kfree(tcp_probe.log);
255 kfree(tcp_probe.log);