Lines Matching refs:layout
122 struct vn_ring_layout *layout)
125 struct layout {
135 layout->head_offset = offsetof(struct layout, head);
136 layout->tail_offset = offsetof(struct layout, tail);
137 layout->status_offset = offsetof(struct layout, status);
139 layout->buffer_offset = offsetof(struct layout, buffer);
140 layout->buffer_size = buf_size;
142 layout->extra_offset = layout->buffer_offset + layout->buffer_size;
143 layout->extra_size = extra_size;
145 layout->shmem_size = layout->extra_offset + layout->extra_size;
151 const struct vn_ring_layout *layout,
155 memset(shared, 0, layout->shmem_size);
159 assert(layout->buffer_size &&
160 util_is_power_of_two_or_zero(layout->buffer_size));
161 ring->buffer_size = layout->buffer_size;
164 ring->shared.head = shared + layout->head_offset;
165 ring->shared.tail = shared + layout->tail_offset;
166 ring->shared.status = shared + layout->status_offset;
167 ring->shared.buffer = shared + layout->buffer_offset;
168 ring->shared.extra = shared + layout->extra_offset;