Lines Matching refs:array

151 	struct nfs_cache_array_entry array[0];  member
199 struct nfs_cache_array *array; in nfs_readdir_clear_array() local
202 array = kmap_atomic(page); in nfs_readdir_clear_array()
203 for (i = 0; i < array->size; i++) in nfs_readdir_clear_array()
204 kfree(array->array[i].string.name); in nfs_readdir_clear_array()
205 kunmap_atomic(array); in nfs_readdir_clear_array()
232 struct nfs_cache_array *array = nfs_readdir_get_array(page); in nfs_readdir_add_to_array() local
236 if (IS_ERR(array)) in nfs_readdir_add_to_array()
237 return PTR_ERR(array); in nfs_readdir_add_to_array()
239 cache_entry = &array->array[array->size]; in nfs_readdir_add_to_array()
252 array->last_cookie = entry->cookie; in nfs_readdir_add_to_array()
253 array->size++; in nfs_readdir_add_to_array()
255 array->eof_index = array->size; in nfs_readdir_add_to_array()
262 int nfs_readdir_search_for_pos(struct nfs_cache_array *array, nfs_readdir_descriptor_t *desc) in nfs_readdir_search_for_pos() argument
269 if (diff >= array->size) { in nfs_readdir_search_for_pos()
270 if (array->eof_index >= 0) in nfs_readdir_search_for_pos()
276 *desc->dir_cookie = array->array[index].cookie; in nfs_readdir_search_for_pos()
294 int nfs_readdir_search_for_cookie(struct nfs_cache_array *array, nfs_readdir_descriptor_t *desc) in nfs_readdir_search_for_cookie() argument
300 for (i = 0; i < array->size; i++) { in nfs_readdir_search_for_cookie()
301 if (array->array[i].cookie == *desc->dir_cookie) { in nfs_readdir_search_for_cookie()
317 desc->file, array->array[i].string.len, in nfs_readdir_search_for_cookie()
318 array->array[i].string.name, *desc->dir_cookie); in nfs_readdir_search_for_cookie()
331 if (array->eof_index >= 0) { in nfs_readdir_search_for_cookie()
333 if (*desc->dir_cookie == array->last_cookie) in nfs_readdir_search_for_cookie()
343 struct nfs_cache_array *array; in nfs_readdir_search_array() local
346 array = nfs_readdir_get_array(desc->page); in nfs_readdir_search_array()
347 if (IS_ERR(array)) { in nfs_readdir_search_array()
348 status = PTR_ERR(array); in nfs_readdir_search_array()
353 status = nfs_readdir_search_for_pos(array, desc); in nfs_readdir_search_array()
355 status = nfs_readdir_search_for_cookie(array, desc); in nfs_readdir_search_array()
358 desc->last_cookie = array->last_cookie; in nfs_readdir_search_array()
359 desc->current_index += array->size; in nfs_readdir_search_array()
538 struct nfs_cache_array *array; in nfs_readdir_page_filler() local
572 array = nfs_readdir_get_array(page); in nfs_readdir_page_filler()
573 if (!IS_ERR(array)) { in nfs_readdir_page_filler()
574 array->eof_index = array->size; in nfs_readdir_page_filler()
578 status = PTR_ERR(array); in nfs_readdir_page_filler()
621 struct nfs_cache_array *array; in nfs_readdir_xdr_to_array() local
640 array = nfs_readdir_get_array(page); in nfs_readdir_xdr_to_array()
641 if (IS_ERR(array)) { in nfs_readdir_xdr_to_array()
642 status = PTR_ERR(array); in nfs_readdir_xdr_to_array()
645 memset(array, 0, sizeof(struct nfs_cache_array)); in nfs_readdir_xdr_to_array()
646 array->eof_index = -1; in nfs_readdir_xdr_to_array()
664 } while (array->eof_index < 0); in nfs_readdir_xdr_to_array()
764 struct nfs_cache_array *array = NULL; in nfs_do_filldir() local
767 array = nfs_readdir_get_array(desc->page); in nfs_do_filldir()
768 if (IS_ERR(array)) { in nfs_do_filldir()
769 res = PTR_ERR(array); in nfs_do_filldir()
773 for (i = desc->cache_entry_index; i < array->size; i++) { in nfs_do_filldir()
776 ent = &array->array[i]; in nfs_do_filldir()
783 if (i < (array->size-1)) in nfs_do_filldir()
784 *desc->dir_cookie = array->array[i+1].cookie; in nfs_do_filldir()
786 *desc->dir_cookie = array->last_cookie; in nfs_do_filldir()
790 if (array->eof_index >= 0) in nfs_do_filldir()