Messages in this thread Patch in this message |  | | Date | Thu, 31 Aug 2017 16:35:15 -0700 | | From | "Darrick J. Wong" <> | | Subject | [PATCH] mm: kvfree the swap cluster info if the swap file is unsatisfactory |
| |
If initializing a small swap file fails because the swap file has a problem (holes, etc.) then we need to free the cluster info as part of cleanup. Unfortunately a previous patch changed the code to use kvzalloc but did not change all the vfree calls to use kvfree.
Found by running generic/357 from xfstests.
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> --- mm/swapfile.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mm/swapfile.c b/mm/swapfile.c index 6ba4aab..c1deb01 100644 --- a/mm/swapfile.c +++ b/mm/swapfile.c @@ -3052,7 +3052,7 @@ SYSCALL_DEFINE2(swapon, const char __user *, specialfile, int, swap_flags) p->flags = 0; spin_unlock(&swap_lock); vfree(swap_map); - vfree(cluster_info); + kvfree(cluster_info); if (swap_file) { if (inode && S_ISREG(inode->i_mode)) { inode_unlock(inode);
|  |