mp 78 libdb/mpool.c MPOOL *mp; mp 95 libdb/mpool.c if ((mp = (MPOOL *)calloc(1, sizeof(MPOOL))) == NULL) mp 97 libdb/mpool.c CIRCLEQ_INIT(&mp->lqh); mp 99 libdb/mpool.c CIRCLEQ_INIT(&mp->hqh[entry]); mp 100 libdb/mpool.c mp->maxcache = maxcache; mp 101 libdb/mpool.c mp->npages = sb.st_size / pagesize; mp 102 libdb/mpool.c mp->pagesize = pagesize; mp 103 libdb/mpool.c mp->fd = fd; mp 104 libdb/mpool.c return (mp); mp 112 libdb/mpool.c mpool_filter(mp, pgin, pgout, pgcookie) mp 113 libdb/mpool.c MPOOL *mp; mp 118 libdb/mpool.c mp->pgin = pgin; mp 119 libdb/mpool.c mp->pgout = pgout; mp 120 libdb/mpool.c mp->pgcookie = pgcookie; mp 128 libdb/mpool.c mpool_new(mp, pgnoaddr) mp 129 libdb/mpool.c MPOOL *mp; mp 135 libdb/mpool.c if (mp->npages == MAX_PAGE_NUMBER) { mp 140 libdb/mpool.c ++mp->pagenew; mp 147 libdb/mpool.c if ((bp = mpool_bkt(mp)) == NULL) mp 149 libdb/mpool.c *pgnoaddr = bp->pgno = mp->npages++; mp 152 libdb/mpool.c head = &mp->hqh[HASHKEY(bp->pgno)]; mp 154 libdb/mpool.c CIRCLEQ_INSERT_TAIL(&mp->lqh, bp, q); mp 163 libdb/mpool.c mpool_get(mp, pgno, flags) mp 164 libdb/mpool.c MPOOL *mp; mp 174 libdb/mpool.c if (pgno >= mp->npages) { mp 180 libdb/mpool.c ++mp->pageget; mp 184 libdb/mpool.c if ((bp = mpool_look(mp, pgno)) != NULL) { mp 196 libdb/mpool.c head = &mp->hqh[HASHKEY(bp->pgno)]; mp 199 libdb/mpool.c CIRCLEQ_REMOVE(&mp->lqh, bp, q); mp 200 libdb/mpool.c CIRCLEQ_INSERT_TAIL(&mp->lqh, bp, q); mp 208 libdb/mpool.c if ((bp = mpool_bkt(mp)) == NULL) mp 213 libdb/mpool.c ++mp->pageread; mp 215 libdb/mpool.c off = mp->pagesize * pgno; mp 216 libdb/mpool.c if (lseek(mp->fd, off, SEEK_SET) != off) mp 218 libdb/mpool.c if ((nr = read(mp->fd, bp->page, mp->pagesize)) != mp->pagesize) { mp 232 libdb/mpool.c head = &mp->hqh[HASHKEY(bp->pgno)]; mp 234 libdb/mpool.c CIRCLEQ_INSERT_TAIL(&mp->lqh, bp, q); mp 237 libdb/mpool.c if (mp->pgin != NULL) mp 238 libdb/mpool.c (mp->pgin)(mp->pgcookie, bp->pgno, bp->page); mp 248 libdb/mpool.c mpool_put(mp, page, flags) mp 249 libdb/mpool.c MPOOL *mp; mp 256 libdb/mpool.c ++mp->pageput; mp 276 libdb/mpool.c mpool_close(mp) mp 277 libdb/mpool.c MPOOL *mp; mp 282 libdb/mpool.c while ((bp = mp->lqh.cqh_first) != (void *)&mp->lqh) { mp 283 libdb/mpool.c CIRCLEQ_REMOVE(&mp->lqh, mp->lqh.cqh_first, q); mp 288 libdb/mpool.c free(mp); mp 297 libdb/mpool.c mpool_sync(mp) mp 298 libdb/mpool.c MPOOL *mp; mp 303 libdb/mpool.c for (bp = mp->lqh.cqh_first; mp 304 libdb/mpool.c bp != (void *)&mp->lqh; bp = bp->q.cqe_next) mp 306 libdb/mpool.c mpool_write(mp, bp) == RET_ERROR) mp 310 libdb/mpool.c return (fsync(mp->fd) ? RET_ERROR : RET_SUCCESS); mp 318 libdb/mpool.c mpool_bkt(mp) mp 319 libdb/mpool.c MPOOL *mp; mp 325 libdb/mpool.c if (mp->curcache < mp->maxcache) mp 334 libdb/mpool.c for (bp = mp->lqh.cqh_first; mp 335 libdb/mpool.c bp != (void *)&mp->lqh; bp = bp->q.cqe_next) mp 339 libdb/mpool.c mpool_write(mp, bp) == RET_ERROR) mp 342 libdb/mpool.c ++mp->pageflush; mp 345 libdb/mpool.c head = &mp->hqh[HASHKEY(bp->pgno)]; mp 347 libdb/mpool.c CIRCLEQ_REMOVE(&mp->lqh, bp, q); mp 351 libdb/mpool.c memset(bp, 0xff, sizeof(BKT) + mp->pagesize); mp 358 libdb/mpool.c new: if ((bp = (BKT *)malloc(sizeof(BKT) + mp->pagesize)) == NULL) mp 361 libdb/mpool.c ++mp->pagealloc; mp 364 libdb/mpool.c memset(bp, 0xff, sizeof(BKT) + mp->pagesize); mp 367 libdb/mpool.c ++mp->curcache; mp 376 libdb/mpool.c mpool_write(mp, bp) mp 377 libdb/mpool.c MPOOL *mp; mp 383 libdb/mpool.c ++mp->pagewrite; mp 387 libdb/mpool.c if (mp->pgout) mp 388 libdb/mpool.c (mp->pgout)(mp->pgcookie, bp->pgno, bp->page); mp 390 libdb/mpool.c off = mp->pagesize * bp->pgno; mp 391 libdb/mpool.c if (lseek(mp->fd, off, SEEK_SET) != off) mp 393 libdb/mpool.c if (write(mp->fd, bp->page, mp->pagesize) != mp->pagesize) mp 405 libdb/mpool.c mpool_look(mp, pgno) mp 406 libdb/mpool.c MPOOL *mp; mp 412 libdb/mpool.c head = &mp->hqh[HASHKEY(pgno)]; mp 416 libdb/mpool.c ++mp->cachehit; mp 421 libdb/mpool.c ++mp->cachemiss; mp 432 libdb/mpool.c mpool_stat(mp) mp 433 libdb/mpool.c MPOOL *mp; mp 439 libdb/mpool.c (void)fprintf(stderr, "%lu pages in the file\n", (long unsigned int)mp->npages); mp 442 libdb/mpool.c mp->pagesize, (long unsigned int)mp->curcache, (long unsigned int)mp->maxcache); mp 444 libdb/mpool.c mp->pageput, mp->pageget, mp->pagenew); mp 446 libdb/mpool.c mp->pagealloc, mp->pageflush); mp 447 libdb/mpool.c if (mp->cachehit + mp->cachemiss) mp 450 libdb/mpool.c ((double)mp->cachehit / (mp->cachehit + mp->cachemiss)) mp 451 libdb/mpool.c * 100, mp->cachehit, mp->cachemiss); mp 453 libdb/mpool.c mp->pageread, mp->pagewrite); mp 457 libdb/mpool.c for (bp = mp->lqh.cqh_first; mp 458 libdb/mpool.c bp != (void *)&mp->lqh; bp = bp->q.cqe_next) {