X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Ftdb2%2Fio.c;h=31756de341d8fd43d17a41d57c41284cbb650227;hb=ba7740e689b5791d79b95d2c5345870f9c29fb71;hp=bb3d2192829dc504a885e06176f6a2e275c2bcd8;hpb=f2a1247955c1b376469a5e37c9583a1bbfd4dc61;p=ccan diff --git a/ccan/tdb2/io.c b/ccan/tdb2/io.c index bb3d2192..31756de3 100644 --- a/ccan/tdb2/io.c +++ b/ccan/tdb2/io.c @@ -48,8 +48,13 @@ void tdb_mmap(struct tdb_context *tdb) if (tdb->flags & TDB_NOMMAP) return; - tdb->file->map_ptr = mmap(NULL, tdb->file->map_size, tdb->mmap_flags, - MAP_SHARED, tdb->file->fd, 0); + /* size_t can be smaller than off_t. */ + if ((size_t)tdb->file->map_size == tdb->file->map_size) { + tdb->file->map_ptr = mmap(NULL, tdb->file->map_size, + tdb->mmap_flags, + MAP_SHARED, tdb->file->fd, 0); + } else + tdb->file->map_ptr = MAP_FAILED; /* * NB. When mmap fails it returns MAP_FAILED *NOT* NULL !!!! @@ -592,12 +597,6 @@ void tdb_inc_seqnum(struct tdb_context *tdb) } } -void add_stat_(struct tdb_context *tdb, uint64_t *s, size_t val) -{ - if ((uintptr_t)s < (uintptr_t)tdb->stats + tdb->stats->size) - *s += val; -} - static const struct tdb_methods io_methods = { tdb_read, tdb_write,