Lines Matching refs:head
58 local_t head;
152 index = local_read(&buf->head);
176 static void bts_buffer_pad_out(struct bts_phys *phys, unsigned long head)
178 unsigned long index = head - phys->offset;
188 unsigned long index = ds->bts_index - ds->bts_buffer_base, old, head;
193 head = index + bts_buffer_offset(buf, buf->cur_buf);
194 old = local_xchg(&buf->head, head);
197 if (old == head)
205 * old and head are always in the same physical buffer, so we
208 local_add(head - old, &buf->data_size);
210 local_set(&buf->data_size, head);
325 bts->handle.head =
377 unsigned long head, space, next_space, pad, gap, skip, wakeup;
385 head = handle->head & ((buf->nr_pages << PAGE_SHIFT) - 1);
388 space = phys->offset + phys->displacement + phys->size - head;
411 bts_buffer_pad_out(phys, head);
418 head = phys->offset + phys->displacement;
420 * After this, cur_buf and head won't match ds
425 local_set(&buf->head, head);
432 handle->head;
438 buf->end = head + space;
485 old_head = local_read(&buf->head);
489 if (old_head == local_read(&buf->head))