CLEANUP: cache: more efficiently pack the struct cache

By having the cache id on 33 bytes as the first member, it was
creating a hole and forcing the "hot" remaining part to be split
across two cache lines. Let's move the id at the end as it's used
only during config parsing.
diff --git a/src/cache.c b/src/cache.c
index 3b19f85..06d7ce8 100644
--- a/src/cache.c
+++ b/src/cache.c
@@ -45,11 +45,11 @@
 struct flt_ops cache_ops;
 
 struct cache {
-	char id[33];             /* cache name */
-	unsigned int maxage;  /* max-age */
-	unsigned int maxblocks;
-	struct list list;     /* cache linked list */
+	struct list list;        /* cache linked list */
 	struct eb_root entries;  /* head of cache entries based on keys */
+	unsigned int maxage;     /* max-age */
+	unsigned int maxblocks;
+	char id[33];             /* cache name */
 };
 
 /*