Lines Matching refs:head
57 local_t head; member
143 index = local_read(&buf->head); in bts_config_buffer()
167 static void bts_buffer_pad_out(struct bts_phys *phys, unsigned long head) in bts_buffer_pad_out() argument
169 unsigned long index = head - phys->offset; in bts_buffer_pad_out()
191 unsigned long index = ds->bts_index - ds->bts_buffer_base, old, head; in bts_update() local
196 head = index + bts_buffer_offset(buf, buf->cur_buf); in bts_update()
197 old = local_xchg(&buf->head, head); in bts_update()
200 if (old == head) in bts_update()
210 local_add(head - old, &buf->data_size); in bts_update()
212 local_set(&buf->data_size, head); in bts_update()
302 unsigned long head, space, next_space, pad, gap, skip, wakeup; in bts_buffer_reset() local
310 head = handle->head & ((buf->nr_pages << PAGE_SHIFT) - 1); in bts_buffer_reset()
311 if (WARN_ON_ONCE(head != local_read(&buf->head))) in bts_buffer_reset()
315 space = phys->offset + phys->displacement + phys->size - head; in bts_buffer_reset()
338 bts_buffer_pad_out(phys, head); in bts_buffer_reset()
345 head = phys->offset + phys->displacement; in bts_buffer_reset()
352 local_set(&buf->head, head); in bts_buffer_reset()
359 handle->head; in bts_buffer_reset()
365 buf->end = head + space; in bts_buffer_reset()
397 old_head = local_read(&buf->head); in intel_bts_interrupt()
401 if (old_head == local_read(&buf->head)) in intel_bts_interrupt()
428 bts->handle.head = in bts_event_del()