Lines Matching refs:req
109 struct l2cap_req *req; in l2cap_request_alloc() local
121 req = TAILQ_FIRST(&link->hl_reqs); in l2cap_request_alloc()
122 if (req && req->lr_id == next_id) in l2cap_request_alloc()
125 req = zalloc(l2cap_req_pool); in l2cap_request_alloc()
126 if (req == NULL) in l2cap_request_alloc()
129 req->lr_id = link->hl_lastid = next_id; in l2cap_request_alloc()
131 req->lr_code = code; in l2cap_request_alloc()
132 req->lr_chan = chan; in l2cap_request_alloc()
133 req->lr_link = link; in l2cap_request_alloc()
135 callout_init(&req->lr_rtx); in l2cap_request_alloc()
136 callout_reset(&req->lr_rtx, l2cap_response_timeout * hz, in l2cap_request_alloc()
137 l2cap_rtx, req); in l2cap_request_alloc()
139 TAILQ_INSERT_TAIL(&link->hl_reqs, req, lr_next); in l2cap_request_alloc()
150 struct l2cap_req *req; in l2cap_request_lookup() local
152 TAILQ_FOREACH(req, &link->hl_reqs, lr_next) { in l2cap_request_lookup()
153 if (req->lr_id == id) in l2cap_request_lookup()
154 return req; in l2cap_request_lookup()
164 l2cap_request_free(struct l2cap_req *req) in l2cap_request_free() argument
166 struct hci_link *link = req->lr_link; in l2cap_request_free()
168 callout_stop(&req->lr_rtx); in l2cap_request_free()
169 if (callout_active(&req->lr_rtx)) in l2cap_request_free()
172 TAILQ_REMOVE(&link->hl_reqs, req, lr_next); in l2cap_request_free()
173 zfree(l2cap_req_pool, req); in l2cap_request_free()
186 struct l2cap_req *req = arg; in l2cap_rtx() local
189 chan = req->lr_chan; in l2cap_rtx()
190 l2cap_request_free(req); in l2cap_rtx()
192 DPRINTF("cid %d, ident %d\n", (chan ? chan->lc_lcid : 0), req->lr_id); in l2cap_rtx()