Lines Matching refs:head
40 struct sp_chunk **head) in c2_alloc_mqsp_chunk() argument
55 new_head->head = 0; in c2_alloc_mqsp_chunk()
67 *head = new_head; in c2_alloc_mqsp_chunk()
89 __be16 *c2_alloc_mqsp(struct c2_dev *c2dev, struct sp_chunk *head, in c2_alloc_mqsp() argument
94 while (head) { in c2_alloc_mqsp()
95 mqsp = head->head; in c2_alloc_mqsp()
97 head->head = head->shared_ptr[mqsp]; in c2_alloc_mqsp()
99 } else if (head->next == NULL) { in c2_alloc_mqsp()
100 if (c2_alloc_mqsp_chunk(c2dev, gfp_mask, &head->next) == in c2_alloc_mqsp()
102 head = head->next; in c2_alloc_mqsp()
103 mqsp = head->head; in c2_alloc_mqsp()
104 head->head = head->shared_ptr[mqsp]; in c2_alloc_mqsp()
109 head = head->next; in c2_alloc_mqsp()
111 if (head) { in c2_alloc_mqsp()
112 *dma_addr = head->dma_addr + in c2_alloc_mqsp()
113 ((unsigned long) &(head->shared_ptr[mqsp]) - in c2_alloc_mqsp()
114 (unsigned long) head); in c2_alloc_mqsp()
116 &(head->shared_ptr[mqsp]), (unsigned long long) *dma_addr); in c2_alloc_mqsp()
117 return (__force __be16 *) &(head->shared_ptr[mqsp]); in c2_alloc_mqsp()
124 struct sp_chunk *head; in c2_free_mqsp() local
128 head = (struct sp_chunk *) ((unsigned long) mqsp & PAGE_MASK); in c2_free_mqsp()
131 *mqsp = (__force __be16) head->head; in c2_free_mqsp()
138 head->shared_ptr[idx] = head->head; in c2_free_mqsp()
141 head->head = idx; in c2_free_mqsp()