Fix gcc -Wall warnings in libext2fs
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
diff --git a/lib/ext2fs/alloc_tables.c b/lib/ext2fs/alloc_tables.c
index d87585b..b3da037 100644
--- a/lib/ext2fs/alloc_tables.c
+++ b/lib/ext2fs/alloc_tables.c
@@ -43,8 +43,8 @@
flexbg_size = 1 << fs->super->s_log_groups_per_flex;
flexbg = group / flexbg_size;
- if (size > fs->super->s_blocks_per_group / 8)
- size = fs->super->s_blocks_per_group / 8;
+ if (size > (int) (fs->super->s_blocks_per_group / 8))
+ size = (int) fs->super->s_blocks_per_group / 8;
/*
* Dont do a long search if the previous block
@@ -83,8 +83,8 @@
{
errcode_t retval;
blk_t group_blk, start_blk, last_blk, new_blk, blk;
- dgrp_t last_grp;
- int j, rem_grps, flexbg_size = 0;
+ dgrp_t last_grp = 0;
+ int j, rem_grps = 0, flexbg_size = 0;
group_blk = ext2fs_group_first_block(fs, group);
last_blk = ext2fs_group_last_block(fs, group);
diff --git a/lib/ext2fs/csum.c b/lib/ext2fs/csum.c
index 1091d73..ce1508e 100644
--- a/lib/ext2fs/csum.c
+++ b/lib/ext2fs/csum.c
@@ -96,7 +96,7 @@
{
struct ext2_super_block *sb = fs->super;
struct ext2_group_desc *bg = fs->group_desc;
- int blks, dirty = 0;
+ int dirty = 0;
dgrp_t i;
if (!fs->inode_map)
diff --git a/lib/ext2fs/extent.c b/lib/ext2fs/extent.c
index d4c84d0..78c605f 100644
--- a/lib/ext2fs/extent.c
+++ b/lib/ext2fs/extent.c
@@ -762,7 +762,7 @@
*
* handle will be left pointing at original record.
*/
-static errcode_t extent_node_split(ext2_extent_handle_t handle, int flags)
+static errcode_t extent_node_split(ext2_extent_handle_t handle)
{
errcode_t retval = 0;
blk_t new_node_pblk;
@@ -773,9 +773,7 @@
char *block_buf = NULL;
struct ext2fs_extent extent;
struct extent_path *path, *newpath = 0;
- struct ext3_extent *ex;
struct ext3_extent_header *eh, *neweh;
- char *cp;
int tocopy;
int new_root = 0;
struct ext2_extent_info info;
@@ -816,7 +814,7 @@
goto done;
goal_blk = extent.e_pblk;
- retval = extent_node_split(handle, 0);
+ retval = extent_node_split(handle);
if (retval)
goto done;
@@ -1004,8 +1002,9 @@
if (flags & EXT2_EXTENT_INSERT_NOSPLIT) {
return EXT2_ET_CANT_INSERT_EXTENT;
} else {
- dbg_printf("node full - splitting\n");
- retval = extent_node_split(handle, 0);
+ dbg_printf("node full (level %d) - splitting\n",
+ handle->level);
+ retval = extent_node_split(handle);
if (retval)
goto errout;
path = handle->path + handle->level;
@@ -1113,7 +1112,7 @@
/* special case if the extent tree is completely empty */
if ((handle->max_depth == 0) && (path->entries == 0)) {
retval = ext2fs_extent_insert(handle, 0, &newextent);
- goto done;
+ return retval;
}
/* save our original location in the extent tree */
@@ -1135,7 +1134,8 @@
retval = 0;
mapped = 0;
if (!physical) {
- dbg_printf("block already unmapped\n");
+ dbg_printf("block %llu already unmapped\n",
+ logical);
goto done;
}
} else
@@ -1155,16 +1155,16 @@
/* check if already pointing to the requested physical */
if (mapped && (new_uninit == extent_uninit) &&
(extent.e_pblk + (logical - extent.e_lblk) == physical)) {
- dbg_printf("physical block unchanged\n");
+ dbg_printf("physical block (at %llu) unchanged\n", logical);
goto done;
}
if (!mapped) {
- dbg_printf("mapping unmapped logical block\n");
+ dbg_printf("mapping unmapped logical block %llu\n", logical);
if ((logical == extent.e_lblk + extent.e_len) &&
(physical == extent.e_pblk + extent.e_len) &&
(new_uninit == extent_uninit) &&
- (extent.e_len < max_len-1)) {
+ ((int) extent.e_len < max_len-1)) {
extent.e_len++;
retval = ext2fs_extent_replace(handle, 0, &extent);
} else
@@ -1266,7 +1266,7 @@
struct extent_path *path;
char *cp;
struct ext3_extent_header *eh;
- errcode_t retval;
+ errcode_t retval = 0;
EXT2_CHECK_MAGIC(handle, EXT2_ET_MAGIC_EXTENT_HANDLE);
@@ -1572,13 +1572,12 @@
errcode_t retval;
struct ext2fs_extent extent;
int err;
- int flags = 0;
if (common_extent_args_process(argc, argv, 1, 1, "split_node",
"", CHECK_FS_RW | CHECK_FS_BITMAPS))
return;
- retval = extent_node_split(current_handle, flags);
+ retval = extent_node_split(current_handle);
if (retval) {
com_err(argv[0], retval, 0);
return;
diff --git a/lib/ext2fs/undo_io.c b/lib/ext2fs/undo_io.c
index e1e6458..827c038 100644
--- a/lib/ext2fs/undo_io.c
+++ b/lib/ext2fs/undo_io.c
@@ -42,6 +42,12 @@
#include "ext2_fs.h"
#include "ext2fs.h"
+#ifdef __GNUC__
+#define ATTR(x) __attribute__(x)
+#else
+#define ATTR(x)
+#endif
+
/*
* For checking structure magic numbers...
*/
@@ -95,6 +101,10 @@
static char *tdb_file;
static int actual_size;
+static unsigned char mtime_key[] = "filesystem MTIME";
+static unsigned char blksize_key[] = "filesystem BLKSIZE";
+static unsigned char uuid_key[] = "filesystem UUID";
+
errcode_t set_undo_io_backing_manager(io_manager manager)
{
/*
@@ -135,8 +145,8 @@
goto err_out;
/* Write to tdb file in the file system byte order */
- tdb_key.dptr = "filesystem MTIME";
- tdb_key.dsize = sizeof("filesystem MTIME");
+ tdb_key.dptr = mtime_key;
+ tdb_key.dsize = sizeof(mtime_key);
tdb_data.dptr = (unsigned char *) &(super.s_mtime);
tdb_data.dsize = sizeof(super.s_mtime);
@@ -146,8 +156,8 @@
goto err_out;
}
- tdb_key.dptr = "filesystem UUID";
- tdb_key.dsize = sizeof("filesystem UUID");
+ tdb_key.dptr = uuid_key;
+ tdb_key.dsize = sizeof(uuid_key);
tdb_data.dptr = (unsigned char *)&(super.s_uuid);
tdb_data.dsize = sizeof(super.s_uuid);
@@ -166,8 +176,8 @@
errcode_t retval;
TDB_DATA tdb_key, tdb_data;
- tdb_key.dptr = "filesystem BLKSIZE";
- tdb_key.dsize = sizeof("filesystem BLKSIZE");
+ tdb_key.dptr = blksize_key;
+ tdb_key.dsize = sizeof(blksize_key);
tdb_data.dptr = (unsigned char *)&(block_size);
tdb_data.dsize = sizeof(block_size);
@@ -183,13 +193,13 @@
unsigned long block, int count)
{
- int size, i, sz;
+ int size, sz;
unsigned long block_num, backing_blk_num;
errcode_t retval = 0;
ext2_loff_t offset;
struct undo_private_data *data;
TDB_DATA tdb_key, tdb_data;
- char *read_ptr;
+ unsigned char *read_ptr;
unsigned long end_block;
data = (struct undo_private_data *) channel->private_data;
@@ -312,9 +322,13 @@
return retval;
}
-static errcode_t undo_io_read_error(io_channel channel,
- unsigned long block, int count, void *data,
- size_t size, int actual, errcode_t error)
+static errcode_t undo_io_read_error(io_channel channel ATTR((unused)),
+ unsigned long block ATTR((unused)),
+ int count ATTR((unused)),
+ void *data ATTR((unused)),
+ size_t size ATTR((unused)),
+ int actual,
+ errcode_t error ATTR((unused)))
{
actual_size = actual;
return error;
@@ -330,8 +344,6 @@
io_channel io = NULL;
struct undo_private_data *data = NULL;
errcode_t retval;
- int open_flags;
- struct stat st;
if (name == 0)
return EXT2_ET_BAD_DEVICE_NAME;
@@ -425,7 +437,7 @@
static errcode_t undo_set_blksize(io_channel channel, int blksize)
{
struct undo_private_data *data;
- errcode_t retval;
+ errcode_t retval = 0;
EXT2_CHECK_MAGIC(channel, EXT2_ET_MAGIC_IO_CHANNEL);
data = (struct undo_private_data *) channel->private_data;
@@ -446,7 +458,7 @@
static errcode_t undo_read_blk(io_channel channel, unsigned long block,
int count, void *buf)
{
- errcode_t retval;
+ errcode_t retval = 0;
struct undo_private_data *data;
EXT2_CHECK_MAGIC(channel, EXT2_ET_MAGIC_IO_CHANNEL);
@@ -485,7 +497,6 @@
{
struct undo_private_data *data;
errcode_t retval = 0;
- ssize_t actual;
ext2_loff_t location;
unsigned long blk_num, count;;