Lines Matching refs:sig_hdr

159 			   struct signal_queue_header *sig_hdr, int slot)  in sig_data_offset()  argument
161 return (sig_queue_offset(chan_hdr, q) + sig_hdr->sig_base_offset + in sig_data_offset()
162 (slot * sig_hdr->signal_size)); in sig_data_offset()
169 #define SIG_WRITE_FIELD(channel, queue, sig_hdr, FIELD) \ argument
173 &((sig_hdr)->FIELD), \
174 sizeof((sig_hdr)->FIELD))
177 struct signal_queue_header *sig_hdr) in sig_read_header() argument
185 sig_hdr, sizeof(struct signal_queue_header)); in sig_read_header()
189 struct signal_queue_header *sig_hdr, u32 slot, in sig_read_data() argument
193 sig_hdr, slot); in sig_read_data()
196 data, sig_hdr->signal_size); in sig_read_data()
200 struct signal_queue_header *sig_hdr, u32 slot, in sig_write_data() argument
204 sig_hdr, slot); in sig_write_data()
207 data, sig_hdr->signal_size); in sig_write_data()
213 struct signal_queue_header sig_hdr; in signalremove_inner() local
216 error = sig_read_header(channel, queue, &sig_hdr); in signalremove_inner()
220 if (sig_hdr.head == sig_hdr.tail) in signalremove_inner()
222 sig_hdr.tail = (sig_hdr.tail + 1) % sig_hdr.max_slots; in signalremove_inner()
223 error = sig_read_data(channel, queue, &sig_hdr, sig_hdr.tail, msg); in signalremove_inner()
226 sig_hdr.num_received++; in signalremove_inner()
232 error = SIG_WRITE_FIELD(channel, queue, &sig_hdr, tail); in signalremove_inner()
235 error = SIG_WRITE_FIELD(channel, queue, &sig_hdr, num_received); in signalremove_inner()
270 struct signal_queue_header sig_hdr; in queue_empty() local
272 if (sig_read_header(channel, queue, &sig_hdr)) in queue_empty()
274 return (sig_hdr.head == sig_hdr.tail); in queue_empty()
303 struct signal_queue_header sig_hdr; in signalinsert_inner() local
306 err = sig_read_header(channel, queue, &sig_hdr); in signalinsert_inner()
309 sig_hdr.head = (sig_hdr.head + 1) % sig_hdr.max_slots; in signalinsert_inner()
310 if (sig_hdr.head == sig_hdr.tail) { in signalinsert_inner()
311 sig_hdr.num_overflows++; in signalinsert_inner()
312 err = SIG_WRITE_FIELD(channel, queue, &sig_hdr, num_overflows); in signalinsert_inner()
317 err = sig_write_data(channel, queue, &sig_hdr, sig_hdr.head, msg); in signalinsert_inner()
320 sig_hdr.num_sent++; in signalinsert_inner()
326 err = SIG_WRITE_FIELD(channel, queue, &sig_hdr, head); in signalinsert_inner()
329 err = SIG_WRITE_FIELD(channel, queue, &sig_hdr, num_sent); in signalinsert_inner()