mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-02 18:54:10 +08:00
NFS: Clean up page array initialisation/free
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
This commit is contained in:
parent
11d03d0a1e
commit
9332cf14e2
16
fs/nfs/dir.c
16
fs/nfs/dir.c
@ -199,20 +199,17 @@ static void nfs_grow_dtsize(struct nfs_readdir_descriptor *desc)
|
|||||||
nfs_set_dtsize(desc, desc->dtsize << 1);
|
nfs_set_dtsize(desc, desc->dtsize << 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void nfs_readdir_array_init(struct nfs_cache_array *array)
|
|
||||||
{
|
|
||||||
memset(array, 0, sizeof(struct nfs_cache_array));
|
|
||||||
}
|
|
||||||
|
|
||||||
static void nfs_readdir_page_init_array(struct page *page, u64 last_cookie,
|
static void nfs_readdir_page_init_array(struct page *page, u64 last_cookie,
|
||||||
u64 change_attr)
|
u64 change_attr)
|
||||||
{
|
{
|
||||||
struct nfs_cache_array *array;
|
struct nfs_cache_array *array;
|
||||||
|
|
||||||
array = kmap_atomic(page);
|
array = kmap_atomic(page);
|
||||||
nfs_readdir_array_init(array);
|
|
||||||
array->change_attr = change_attr;
|
array->change_attr = change_attr;
|
||||||
array->last_cookie = last_cookie;
|
array->last_cookie = last_cookie;
|
||||||
|
array->size = 0;
|
||||||
|
array->page_full = 0;
|
||||||
|
array->page_is_eof = 0;
|
||||||
array->cookies_are_ordered = 1;
|
array->cookies_are_ordered = 1;
|
||||||
kunmap_atomic(array);
|
kunmap_atomic(array);
|
||||||
}
|
}
|
||||||
@ -220,16 +217,15 @@ static void nfs_readdir_page_init_array(struct page *page, u64 last_cookie,
|
|||||||
/*
|
/*
|
||||||
* we are freeing strings created by nfs_add_to_readdir_array()
|
* we are freeing strings created by nfs_add_to_readdir_array()
|
||||||
*/
|
*/
|
||||||
static
|
static void nfs_readdir_clear_array(struct page *page)
|
||||||
void nfs_readdir_clear_array(struct page *page)
|
|
||||||
{
|
{
|
||||||
struct nfs_cache_array *array;
|
struct nfs_cache_array *array;
|
||||||
int i;
|
unsigned int i;
|
||||||
|
|
||||||
array = kmap_atomic(page);
|
array = kmap_atomic(page);
|
||||||
for (i = 0; i < array->size; i++)
|
for (i = 0; i < array->size; i++)
|
||||||
kfree(array->array[i].name);
|
kfree(array->array[i].name);
|
||||||
nfs_readdir_array_init(array);
|
array->size = 0;
|
||||||
kunmap_atomic(array);
|
kunmap_atomic(array);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user