Skip to content

Commit e03ba70

Browse files
Don BradyDelphix Engineering
authored andcommitted
DLPX-74216 nfs-server restarts fail when order-5 allocations are exhausted (#3)
1 parent d92510c commit e03ba70

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

fs/nfsd/filecache.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -643,8 +643,8 @@ nfsd_file_cache_init(void)
643643
if (!nfsd_filecache_wq)
644644
goto out;
645645

646-
nfsd_file_hashtbl = kcalloc(NFSD_FILE_HASH_SIZE,
647-
sizeof(*nfsd_file_hashtbl), GFP_KERNEL);
646+
nfsd_file_hashtbl = kvzalloc(array_size(NFSD_FILE_HASH_SIZE,
647+
sizeof(*nfsd_file_hashtbl)), GFP_KERNEL);
648648
if (!nfsd_file_hashtbl) {
649649
pr_err("nfsd: unable to allocate nfsd_file_hashtbl\n");
650650
goto out_err;
@@ -710,7 +710,7 @@ nfsd_file_cache_init(void)
710710
nfsd_file_slab = NULL;
711711
kmem_cache_destroy(nfsd_file_mark_slab);
712712
nfsd_file_mark_slab = NULL;
713-
kfree(nfsd_file_hashtbl);
713+
kvfree(nfsd_file_hashtbl);
714714
nfsd_file_hashtbl = NULL;
715715
destroy_workqueue(nfsd_filecache_wq);
716716
nfsd_filecache_wq = NULL;
@@ -856,7 +856,7 @@ nfsd_file_cache_shutdown(void)
856856
fsnotify_wait_marks_destroyed();
857857
kmem_cache_destroy(nfsd_file_mark_slab);
858858
nfsd_file_mark_slab = NULL;
859-
kfree(nfsd_file_hashtbl);
859+
kvfree(nfsd_file_hashtbl);
860860
nfsd_file_hashtbl = NULL;
861861
destroy_workqueue(nfsd_filecache_wq);
862862
nfsd_filecache_wq = NULL;

0 commit comments

Comments
 (0)