Skip to contentSkip to conversation

print unsigned RAM usage statistics

PATCH Applied Andreas Dilger 2 participants 2 messages Oct 28, 2008 – Apr 7, 2009

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 print unsigned RAM usage statistics

Running e2fsck against a 14.5TB filesystem with -tt it reported -200904kB for RAM usage in pass3 instead of the correct 2300773kB. The RAM usage statistics were being printed with %d instead of %u.

Also fix a few places using %ld for inode numbers instead of %lu.

============================================================================

e2fsck/util.c +7 -7
index 256100c..cf156bd 100644
@@ -63,7 +63,7 @@ void *e2fsck_allocate_memory(e2fsck_t ctx, unsigned int size,
 	char buf[256];
 
 #ifdef DEBUG_ALLOCATE_MEMORY
-	printf("Allocating %d bytes for %s...\n", size, description);
+	printf("Allocating %u bytes for %s...\n", size, description);
 #endif
 	ret = malloc(size);
 	if (!ret) {
@@ -329,11 +329,11 @@ void print_resource_track(const char *desc, struct resource_track *track,
 #define kbytes(x)	(((x) + 1023) / 1024)
 
 	malloc_info = mallinfo();
-	printf(_("Memory used: %dk/%dk (%dk/%dk), "),
+	printf(_("Memory used: %uk/%uk (%uk/%uk), "),
 	       kbytes(malloc_info.arena), kbytes(malloc_info.hblkhd),
 	       kbytes(malloc_info.uordblks), kbytes(malloc_info.fordblks));
 #else
-	printf(_("Memory used: %d, "),
+	printf(_("Memory used: %u, "),
 	       (int) (((char *) sbrk(0)) - ((char *) track->brk_start)));
 #endif
 #ifdef HAVE_GETRUSAGE
@@ -378,7 +378,7 @@ void e2fsck_read_inode(e2fsck_t ctx, unsigned long ino,
 	retval = ext2fs_read_inode(ctx->fs, ino, inode);
 	if (retval) {
 		com_err("ext2fs_read_inode", retval,
-			_("while reading inode %ld in %s"), ino, proc);
+			_("while reading inode %lu in %s"), ino, proc);
 		fatal_error(ctx, 0);
 	}
 }
@@ -392,7 +392,7 @@ void e2fsck_read_inode_full(e2fsck_t ctx, unsigned long ino,
 	retval = ext2fs_read_inode_full(ctx->fs, ino, inode, bufsize);
 	if (retval) {
 		com_err("ext2fs_read_inode_full", retval,
-			_("while reading inode %ld in %s"), ino, proc);
+			_("while reading inode %lu in %s"), ino, proc);
 		fatal_error(ctx, 0);
 	}
 }
@@ -406,7 +406,7 @@ extern void e2fsck_write_inode_full(e2fsck_t ctx, unsigned long ino,
 	retval = ext2fs_write_inode_full(ctx->fs, ino, inode, bufsize);
 	if (retval) {
 		com_err("ext2fs_write_inode", retval,
-			_("while writing inode %ld in %s"), ino, proc);
+			_("while writing inode %lu in %s"), ino, proc);
 		fatal_error(ctx, 0);
 	}
 }
@@ -419,7 +419,7 @@ extern void e2fsck_write_inode(e2fsck_t ctx, unsigned long ino,
 	retval = ext2fs_write_inode(ctx->fs, ino, inode);
 	if (retval) {
 		com_err("ext2fs_write_inode", retval,
-			_("while writing inode %ld in %s"), ino, proc);
+			_("while writing inode %lu in %s"), ino, proc);
 		fatal_error(ctx, 0);
 	}
 }

Cheers, Andreas
--
Andreas Dilger
Sr. Staff Engineer, Lustre Group
Sun Microsystems of Canada, Inc.

Applied
#1 lore raw
Quoted 3 lines · Andreas Dilger

Running e2fsck against a 14.5TB filesystem with -tt it reported -200904kB for RAM usage in pass3 instead of the correct 2300773kB. The RAM usage statistics were being printed with %d instead of %u.

Thanks, applied.

- Ted