[switch tail queue to singly linked list for keeping track of pages
John Meacham <john@repetae.net>**20100407040407
 Ignore-this: eb5941aa5d7b6a323e9806fd796eb040
] hunk ./src/data/rts/slub.c 32
-        TAILQ_ENTRY(s_page) tailq;
+        SLIST_ENTRY(s_page) link;
hunk ./src/data/rts/slub.c 43
-        TAILQ_HEAD(,s_page) pages;
-        TAILQ_HEAD(,s_page) full_pages;
+        SLIST_HEAD(,s_page) pages;
+        SLIST_HEAD(,s_page) full_pages;
hunk ./src/data/rts/slub.c 81
-                if((unsigned)arena->num_used * 10 >= page_threshold * 8) {
+                if((unsigned)arena->num_used * 10 >= page_threshold * 9) {
hunk ./src/data/rts/slub.c 102
-                struct s_page *pg = TAILQ_FIRST(&sc->pages);
-                struct s_page *fpg = TAILQ_FIRST(&sc->full_pages);
-                TAILQ_INIT(&sc->pages);
-                TAILQ_INIT(&sc->full_pages);
+                struct s_page *pg = SLIST_FIRST(&sc->pages);
+                struct s_page *fpg = SLIST_FIRST(&sc->full_pages);
+                SLIST_INIT(&sc->pages);
+                SLIST_INIT(&sc->full_pages);
hunk ./src/data/rts/slub.c 111
-                        struct s_page *npg = TAILQ_NEXT(pg,tailq);
+                        struct s_page *npg = SLIST_NEXT(pg,link);
hunk ./src/data/rts/slub.c 113
-                                TAILQ_INSERT_HEAD(&sc->full_pages,pg,tailq);
+                                SLIST_INSERT_HEAD(&sc->full_pages,pg,link);
hunk ./src/data/rts/slub.c 118
-                                TAILQ_INSERT_HEAD(&sc->pages,pg,tailq);
+                                SLIST_INSERT_HEAD(&sc->pages,pg,link);
hunk ./src/data/rts/slub.c 149
-        pg = TAILQ_FIRST(&sc->pages);
+        pg = SLIST_FIRST(&sc->pages);
hunk ./src/data/rts/slub.c 156
-                TAILQ_INSERT_HEAD(&sc->pages,pg,tailq);
+                SLIST_INSERT_HEAD(&sc->pages,pg,link);
hunk ./src/data/rts/slub.c 165
-
hunk ./src/data/rts/slub.c 169
-                TAILQ_REMOVE(&sc->pages,pg,tailq);
-                TAILQ_INSERT_HEAD(&sc->full_pages,pg,tailq);
+                assert(pg == SLIST_FIRST(&sc->pages));
+                SLIST_REMOVE_HEAD(&sc->pages,link);
+                SLIST_INSERT_HEAD(&sc->full_pages,pg,link);
hunk ./src/data/rts/slub.c 203
-        TAILQ_INIT(&sc->pages);
-        TAILQ_INIT(&sc->full_pages);
+        SLIST_INIT(&sc->pages);
+        SLIST_INIT(&sc->full_pages);
hunk ./src/data/rts/slub.c 217
-                struct s_page *pg = TAILQ_FIRST(&sc->pages);
-                struct s_page *fpg = TAILQ_FIRST(&sc->full_pages);
+                struct s_page *pg = SLIST_FIRST(&sc->pages);
+                struct s_page *fpg = SLIST_FIRST(&sc->full_pages);
hunk ./src/data/rts/slub.c 220
-                        for(;pg;pg = TAILQ_NEXT(pg,tailq))
+                        for(;pg;pg = SLIST_NEXT(pg,link))
hunk ./src/data/rts/slub.c 251
-        if(__predict_true(rsc && *rsc))
+        if(__predict_true(rsc && *rsc)) {
+      //          printf("s_cached: %p\n", rsc);
hunk ./src/data/rts/slub.c 254
+        }
+       // printf("s_new: %p\n", rsc);
hunk ./src/data/rts/slub.c 296
-        TAILQ_FOREACH(pg,&sc->pages,tailq) {
+        SLIST_FOREACH(pg,&sc->pages,link) {
hunk ./src/data/rts/slub.c 300
-        TAILQ_FOREACH(pg,&sc->full_pages,tailq) {
+        SLIST_FOREACH(pg,&sc->full_pages,link) {