diff --git a/fs/ceph/snap.c b/fs/ceph/snap.c
index ccfcc66aaf442030bd552dfbf8bb4e052fc3c9ee..923be9399b21ce7a7feb48d3c471d5fa77fed1fd 100644
--- a/fs/ceph/snap.c
+++ b/fs/ceph/snap.c
@@ -1155,5 +1155,6 @@ void ceph_cleanup_snapid_map(struct ceph_mds_client *mdsc)
 			pr_err("snapid map %llx -> %x still in use\n",
 			       sm->snap, sm->dev);
 		}
+		kfree(sm);
 	}
 }