diff options
-rw-r--r-- | src/bucket.c | 6 | ||||
-rw-r--r-- | src/falloc.c | 4 | ||||
-rw-r--r-- | src/findkey.c | 2 | ||||
-rw-r--r-- | src/fullio.c | 4 | ||||
-rw-r--r-- | src/gdbmclose.c | 2 | ||||
-rw-r--r-- | src/gdbmopen.c | 4 | ||||
-rw-r--r-- | src/gdbmsetopt.c | 2 | ||||
-rw-r--r-- | src/gdbmstore.c | 2 | ||||
-rw-r--r-- | src/gdbmsync.c | 2 | ||||
-rw-r--r-- | src/gdbmtool.c | 4 | ||||
-rw-r--r-- | src/proto.h | 20 | ||||
-rw-r--r-- | src/recover.c | 2 | ||||
-rw-r--r-- | src/systems.h | 16 | ||||
-rw-r--r-- | src/update.c | 8 |
14 files changed, 41 insertions, 37 deletions
diff --git a/src/bucket.c b/src/bucket.c index 2289594..e17019c 100644 --- a/src/bucket.c +++ b/src/bucket.c @@ -114,3 +114,3 @@ _gdbm_get_bucket (GDBM_FILE dbf, int dir_index) /* Position the file pointer */ - file_pos = __lseek (dbf, bucket_adr, SEEK_SET); + file_pos = gdbm_file_seek (dbf, bucket_adr, SEEK_SET); if (file_pos != bucket_adr) @@ -189,3 +189,3 @@ _gdbm_read_bucket_at (GDBM_FILE dbf, off_t off, hash_bucket *bucket, /* Read the bucket. */ - file_pos = __lseek (dbf, off, SEEK_SET); + file_pos = gdbm_file_seek (dbf, off, SEEK_SET); if (file_pos != off) @@ -434,3 +434,3 @@ _gdbm_write_bucket (GDBM_FILE dbf, cache_elem *ca_entry) - file_pos = __lseek (dbf, ca_entry->ca_adr, SEEK_SET); + file_pos = gdbm_file_seek (dbf, ca_entry->ca_adr, SEEK_SET); if (file_pos != ca_entry->ca_adr) diff --git a/src/falloc.c b/src/falloc.c index 13ee0ed..2f21ebe 100644 --- a/src/falloc.c +++ b/src/falloc.c @@ -193,3 +193,3 @@ pop_avail_block (GDBM_FILE dbf) /* Read the block. */ - file_pos = __lseek (dbf, new_el.av_adr, SEEK_SET); + file_pos = gdbm_file_seek (dbf, new_el.av_adr, SEEK_SET); if (file_pos != new_el.av_adr) @@ -323,3 +323,3 @@ push_avail_block (GDBM_FILE dbf) /* Update the disk. */ - file_pos = __lseek (dbf, av_adr, SEEK_SET); + file_pos = gdbm_file_seek (dbf, av_adr, SEEK_SET); if (file_pos != av_adr) diff --git a/src/findkey.c b/src/findkey.c index 9bb4553..9c8fd71 100644 --- a/src/findkey.c +++ b/src/findkey.c @@ -85,3 +85,3 @@ _gdbm_read_entry (GDBM_FILE dbf, int elem_loc) /* Read into the cache. */ - file_pos = __lseek (dbf, dbf->bucket->h_table[elem_loc].data_pointer, + file_pos = gdbm_file_seek (dbf, dbf->bucket->h_table[elem_loc].data_pointer, SEEK_SET); diff --git a/src/fullio.c b/src/fullio.c index bdb51cb..84eea60 100644 --- a/src/fullio.c +++ b/src/fullio.c @@ -29,3 +29,3 @@ _gdbm_full_read (GDBM_FILE dbf, void *buffer, size_t size) { - ssize_t rdbytes = __read (dbf, ptr, size); + ssize_t rdbytes = gdbm_file_read (dbf, ptr, size); if (rdbytes == -1) @@ -57,3 +57,3 @@ _gdbm_full_write (GDBM_FILE dbf, void *buffer, size_t size) { - ssize_t wrbytes = __write (dbf, ptr, size); + ssize_t wrbytes = gdbm_file_write (dbf, ptr, size); if (wrbytes == -1) diff --git a/src/gdbmclose.c b/src/gdbmclose.c index c638183..ead9187 100644 --- a/src/gdbmclose.c +++ b/src/gdbmclose.c @@ -37,3 +37,3 @@ gdbm_close (GDBM_FILE dbf) if (dbf->read_write != GDBM_READER) - __fsync (dbf); + gdbm_file_sync (dbf); diff --git a/src/gdbmopen.c b/src/gdbmopen.c index 22e7ca6..53d62a4 100644 --- a/src/gdbmopen.c +++ b/src/gdbmopen.c @@ -431,3 +431,3 @@ gdbm_fd_open (int fd, const char *file_name, int block_size, /* Wait for initial configuration to be written to disk. */ - __fsync (dbf); + gdbm_file_sync (dbf); @@ -510,3 +510,3 @@ gdbm_fd_open (int fd, const char *file_name, int block_size, /* Read the hash table directory. */ - file_pos = __lseek (dbf, dbf->header->dir, SEEK_SET); + file_pos = gdbm_file_seek (dbf, dbf->header->dir, SEEK_SET); if (file_pos != dbf->header->dir) diff --git a/src/gdbmsetopt.c b/src/gdbmsetopt.c index ca62290..69e244c 100644 --- a/src/gdbmsetopt.c +++ b/src/gdbmsetopt.c @@ -192,3 +192,3 @@ setopt_gdbm_setmmap (GDBM_FILE dbf, void *optval, int optlen) } - __fsync (dbf); + gdbm_file_sync (dbf); if (n == dbf->memory_mapping) diff --git a/src/gdbmstore.c b/src/gdbmstore.c index 6b498b2..b8a1e66 100644 --- a/src/gdbmstore.c +++ b/src/gdbmstore.c @@ -162,3 +162,3 @@ gdbm_store (GDBM_FILE dbf, datum key, datum content, int flags) /* Write the data to the file. */ - file_pos = __lseek (dbf, file_adr, SEEK_SET); + file_pos = gdbm_file_seek (dbf, file_adr, SEEK_SET); if (file_pos != file_adr) diff --git a/src/gdbmsync.c b/src/gdbmsync.c index 10fbaad..5d94cbe 100644 --- a/src/gdbmsync.c +++ b/src/gdbmsync.c @@ -36,3 +36,3 @@ gdbm_sync (GDBM_FILE dbf) /* Do the sync on the file. */ - __fsync (dbf); + gdbm_file_sync (dbf); diff --git a/src/gdbmtool.c b/src/gdbmtool.c index 11b6f20..dbb7510 100644 --- a/src/gdbmtool.c +++ b/src/gdbmtool.c @@ -229,3 +229,3 @@ _gdbm_avail_list_size (GDBM_FILE dbf, size_t min_size) { - if (__lseek (dbf, temp, SEEK_SET) != temp) + if (gdbm_file_seek (dbf, temp, SEEK_SET) != temp) { @@ -287,3 +287,3 @@ _gdbm_print_avail_list (FILE *fp, GDBM_FILE dbf) { - if (__lseek (dbf, temp, SEEK_SET) != temp) + if (gdbm_file_seek (dbf, temp, SEEK_SET) != temp) { diff --git a/src/proto.h b/src/proto.h index 9592f52..563505f 100644 --- a/src/proto.h +++ b/src/proto.h @@ -85,2 +85,22 @@ int _gdbm_next_bucket_dir (GDBM_FILE dbf, int bucket_dir); +/* I/O macros. */ +#if HAVE_MMAP +# define gdbm_file_read(_dbf, _buf, _size) \ + _gdbm_mapped_read(_dbf, _buf, _size) +# define gdbm_file_write(_dbf, _buf, _size) \ + _gdbm_mapped_write(_dbf, _buf, _size) +# define gdbm_file_seek(_dbf, _off, _whn) \ + _gdbm_mapped_lseek(_dbf, _off, _whn) +# define gdbm_file_sync(_dbf) \ + _gdbm_mapped_sync(_dbf) +#else +# define gdbm_file_read(_dbf, _buf, _size) read(_dbf->desc, _buf, _size) +# define gdbm_file_write(_dbf, _buf, _size) write(_dbf->desc, _buf, _size) +# define gdbm_file_seek(_dbf, _off, _whn) lseek(_dbf->desc, _off, _whn) +# if HAVE_FSYNC +# define gdbm_file_sync(_dbf) fsync(_dbf->desc) +# else +# define gdbm_file_sync(_dbf) { sync(); sync(); } +# endif +#endif diff --git a/src/recover.c b/src/recover.c index 074c76f..f6859ea 100644 --- a/src/recover.c +++ b/src/recover.c @@ -180,3 +180,3 @@ _gdbm_finish_transfer (GDBM_FILE dbf, GDBM_FILE new_dbf, /* Make sure the new database is all on disk. */ - __fsync (dbf); + gdbm_file_sync (dbf); diff --git a/src/systems.h b/src/systems.h index c678573..750aa51 100644 --- a/src/systems.h +++ b/src/systems.h @@ -65,18 +65,2 @@ -/* I/O macros. */ -#if HAVE_MMAP -# define __read(_dbf, _buf, _size) _gdbm_mapped_read(_dbf, _buf, _size) -# define __write(_dbf, _buf, _size) _gdbm_mapped_write(_dbf, _buf, _size) -# define __lseek(_dbf, _off, _whn) _gdbm_mapped_lseek(_dbf, _off, _whn) -# define __fsync(_dbf) _gdbm_mapped_sync(_dbf) -#else -# define __read(_dbf, _buf, _size) read(_dbf->desc, _buf, _size) -# define __write(_dbf, _buf, _size) write(_dbf->desc, _buf, _size) -# define __lseek(_dbf, _off, _whn) lseek(_dbf->desc, _off, _whn) -# if HAVE_FSYNC -# define __fsync(_dbf) fsync(_dbf->desc) -# else -# define __fsync(_dbf) { sync(); sync(); } -# endif -#endif diff --git a/src/update.c b/src/update.c index f4b8b78..e3ee717 100644 --- a/src/update.c +++ b/src/update.c @@ -32,3 +32,3 @@ write_header (GDBM_FILE dbf) - file_pos = __lseek (dbf, 0L, SEEK_SET); + file_pos = gdbm_file_seek (dbf, 0L, SEEK_SET); if (file_pos != 0) @@ -52,3 +52,3 @@ write_header (GDBM_FILE dbf) if (dbf->fast_write == FALSE) - __fsync (dbf); + gdbm_file_sync (dbf); @@ -96,3 +96,3 @@ _gdbm_end_update (GDBM_FILE dbf) { - file_pos = __lseek (dbf, dbf->header->dir, SEEK_SET); + file_pos = gdbm_file_seek (dbf, dbf->header->dir, SEEK_SET); if (file_pos != dbf->header->dir) @@ -116,3 +116,3 @@ _gdbm_end_update (GDBM_FILE dbf) if (!dbf->header_changed && dbf->fast_write == FALSE) - __fsync (dbf); + gdbm_file_sync (dbf); } |