[Ocfs2-tools-commits] jlbec commits r563 - trunk/sizetest
svn-commits at oss.oracle.com
svn-commits at oss.oracle.com
Wed Jan 19 18:41:00 CST 2005
Author: jlbec
Date: 2005-01-19 18:40:58 -0600 (Wed, 19 Jan 2005)
New Revision: 563
Modified:
trunk/sizetest/
trunk/sizetest/sizetest.c
Log:
o Fix sizetest warnings.
o Change the output format.
Property changes on: trunk/sizetest
___________________________________________________________________
Name: svn:ignore
+ cscope*
stamp-md5
.*.sw?
.*.cmd
sizetest.ocfs2
*.8
*.d
Modified: trunk/sizetest/sizetest.c
===================================================================
--- trunk/sizetest/sizetest.c 2005-01-20 00:28:55 UTC (rev 562)
+++ trunk/sizetest/sizetest.c 2005-01-20 00:40:58 UTC (rev 563)
@@ -27,229 +27,231 @@
#include <ocfs2.h>
#include <ocfs2_fs.h>
-#ifdef USE_HEX
-# define NUMFORMAT "0x%x"
-#else
-#define NUMFORMAT "%d"
-# endif
-#define SHOW_SIZEOF(x,y) printf("sizeof("#x") = "NUMFORMAT"\n", sizeof(y))
+#undef offsetof
+#define offsetof(TYPE, MEMBER) ((unsigned int) &((TYPE *)0)->MEMBER)
+#define ssizeof(TYPE, MEMBER) ((unsigned int) sizeof(((TYPE *)0)->MEMBER))
-#define SHOW_OFFSET(x,y) printf("\t"#x" = "NUMFORMAT" (%d)\n", \
- (void *)&(y.x)-(void *)&y, sizeof(y.x))
+#define START_TYPE(TYPE) do { \
+ printf("[off]\t%- 20s\t[size]\n", #TYPE); \
+} while (0)
+#define SHOW_OFFSET(TYPE, MEMBER) do { \
+ printf("0x%03X\t%- 20s\t+0x%02X\n", offsetof(TYPE, MEMBER), #MEMBER, ssizeof(TYPE, MEMBER)); \
+} while (0)
+
+#define END_TYPE(TYPE) do {\
+ printf("\t%- 20s\t0x%03X\n", "Total", sizeof(*((TYPE *)0))); \
+} while (0)
+
static void print_ocfs2_extent_rec(void)
{
- ocfs2_extent_rec rec;
+ START_TYPE(ocfs2_extent_rec);
- SHOW_SIZEOF (ocfs2_extent_rec, rec);
+ SHOW_OFFSET(ocfs2_extent_rec, e_cpos);
+ SHOW_OFFSET(ocfs2_extent_rec, e_clusters);
+ SHOW_OFFSET(ocfs2_extent_rec, e_blkno);
- SHOW_OFFSET (e_cpos, rec);
- SHOW_OFFSET (e_clusters, rec);
- SHOW_OFFSET (e_blkno, rec);
+ END_TYPE(ocfs2_extent_rec);
printf("\n");
}
static void print_ocfs2_chain_rec(void)
{
- ocfs2_chain_rec rec;
+ START_TYPE(ocfs2_chain_rec);
- SHOW_SIZEOF (ocfs2_chain_rec, rec);
-
- SHOW_OFFSET (c_free, rec);
- SHOW_OFFSET (c_total, rec);
- SHOW_OFFSET (c_blkno, rec);
- printf("\n");
+ SHOW_OFFSET(ocfs2_chain_rec, c_free);
+ SHOW_OFFSET(ocfs2_chain_rec, c_total);
+ SHOW_OFFSET(ocfs2_chain_rec, c_blkno);
+
+ END_TYPE(ocfs2_chain_rec);
+ printf("\n");
}
static void print_ocfs2_extent_list(void)
{
- ocfs2_extent_list rec;
+ START_TYPE(ocfs2_extent_list);
- SHOW_SIZEOF (ocfs2_extent_list, rec);
-
- SHOW_OFFSET (l_tree_depth, rec);
- SHOW_OFFSET (l_count, rec);
- SHOW_OFFSET (l_next_free_rec, rec);
- SHOW_OFFSET (l_reserved1, rec);
- SHOW_OFFSET (l_reserved2, rec);
- SHOW_OFFSET (l_recs, rec);
- printf("\n");
+ SHOW_OFFSET(ocfs2_extent_list, l_tree_depth);
+ SHOW_OFFSET(ocfs2_extent_list, l_count);
+ SHOW_OFFSET(ocfs2_extent_list, l_next_free_rec);
+ SHOW_OFFSET(ocfs2_extent_list, l_reserved1);
+ SHOW_OFFSET(ocfs2_extent_list, l_reserved2);
+ SHOW_OFFSET(ocfs2_extent_list, l_recs);
+
+ END_TYPE(ocfs2_extent_list);
+ printf("\n");
}
static void print_ocfs2_chain_list(void)
{
ocfs2_chain_list rec;
- SHOW_SIZEOF (ocfs2_chain_list, rec);
+ START_TYPE(ocfs2_chain_list);
- SHOW_OFFSET (cl_cpg, rec);
- SHOW_OFFSET (cl_bpc, rec);
- SHOW_OFFSET (cl_count, rec);
- SHOW_OFFSET (cl_next_free_rec, rec);
- SHOW_OFFSET (cl_reserved1, rec);
- SHOW_OFFSET (cl_recs, rec);
- printf("\n");
+ SHOW_OFFSET(ocfs2_chain_list, cl_cpg);
+ SHOW_OFFSET(ocfs2_chain_list, cl_bpc);
+ SHOW_OFFSET(ocfs2_chain_list, cl_count);
+ SHOW_OFFSET(ocfs2_chain_list, cl_next_free_rec);
+ SHOW_OFFSET(ocfs2_chain_list, cl_reserved1);
+ SHOW_OFFSET(ocfs2_chain_list, cl_recs);
+
+ END_TYPE(ocfs2_chain_list);
+ printf("\n");
}
static void print_ocfs2_extent_block(void)
{
- ocfs2_extent_block rec;
+ START_TYPE(ocfs2_extent_block);
- SHOW_SIZEOF (ocfs2_extent_block, rec);
-
- SHOW_OFFSET (h_signature, rec);
- SHOW_OFFSET (h_reserved1, rec);
- SHOW_OFFSET (h_suballoc_node, rec);
- SHOW_OFFSET (h_suballoc_bit, rec);
- SHOW_OFFSET (h_fs_generation, rec);
- SHOW_OFFSET (h_blkno, rec);
- SHOW_OFFSET (h_reserved3, rec);
- SHOW_OFFSET (h_next_leaf_blk, rec);
- SHOW_OFFSET (h_list, rec);
- printf("\n");
+ SHOW_OFFSET(ocfs2_extent_block, h_signature);
+ SHOW_OFFSET(ocfs2_extent_block, h_reserved1);
+ SHOW_OFFSET(ocfs2_extent_block, h_suballoc_node);
+ SHOW_OFFSET(ocfs2_extent_block, h_suballoc_bit);
+ SHOW_OFFSET(ocfs2_extent_block, h_fs_generation);
+ SHOW_OFFSET(ocfs2_extent_block, h_blkno);
+ SHOW_OFFSET(ocfs2_extent_block, h_reserved3);
+ SHOW_OFFSET(ocfs2_extent_block, h_next_leaf_blk);
+ SHOW_OFFSET(ocfs2_extent_block, h_list);
+
+ END_TYPE(ocfs2_extent_block);
+ printf("\n");
}
static void print_ocfs2_super_block(void)
{
- ocfs2_super_block rec;
+ START_TYPE(ocfs2_super_block);
- SHOW_SIZEOF (ocfs2_super_block, rec);
-
- SHOW_OFFSET (s_major_rev_level, rec);
- SHOW_OFFSET (s_minor_rev_level, rec);
- SHOW_OFFSET (s_mnt_count, rec);
- SHOW_OFFSET (s_max_mnt_count, rec);
- SHOW_OFFSET (s_state, rec);
- SHOW_OFFSET (s_errors, rec);
- SHOW_OFFSET (s_checkinterval, rec);
- SHOW_OFFSET (s_lastcheck, rec);
- SHOW_OFFSET (s_creator_os, rec);
- SHOW_OFFSET (s_feature_compat, rec);
- SHOW_OFFSET (s_feature_incompat, rec);
- SHOW_OFFSET (s_feature_ro_compat, rec);
- SHOW_OFFSET (s_root_blkno, rec);
- SHOW_OFFSET (s_system_dir_blkno, rec);
- SHOW_OFFSET (s_blocksize_bits, rec);
- SHOW_OFFSET (s_clustersize_bits, rec);
- SHOW_OFFSET (s_max_nodes, rec);
- SHOW_OFFSET (s_reserved1, rec);
- SHOW_OFFSET (s_reserved2, rec);
- SHOW_OFFSET (s_first_cluster_group, rec);
- SHOW_OFFSET (s_label, rec);
- SHOW_OFFSET (s_uuid, rec);
- printf("\n");
+ SHOW_OFFSET(ocfs2_super_block, s_major_rev_level);
+ SHOW_OFFSET(ocfs2_super_block, s_minor_rev_level);
+ SHOW_OFFSET(ocfs2_super_block, s_mnt_count);
+ SHOW_OFFSET(ocfs2_super_block, s_max_mnt_count);
+ SHOW_OFFSET(ocfs2_super_block, s_state);
+ SHOW_OFFSET(ocfs2_super_block, s_errors);
+ SHOW_OFFSET(ocfs2_super_block, s_checkinterval);
+ SHOW_OFFSET(ocfs2_super_block, s_lastcheck);
+ SHOW_OFFSET(ocfs2_super_block, s_creator_os);
+ SHOW_OFFSET(ocfs2_super_block, s_feature_compat);
+ SHOW_OFFSET(ocfs2_super_block, s_feature_incompat);
+ SHOW_OFFSET(ocfs2_super_block, s_feature_ro_compat);
+ SHOW_OFFSET(ocfs2_super_block, s_root_blkno);
+ SHOW_OFFSET(ocfs2_super_block, s_system_dir_blkno);
+ SHOW_OFFSET(ocfs2_super_block, s_blocksize_bits);
+ SHOW_OFFSET(ocfs2_super_block, s_clustersize_bits);
+ SHOW_OFFSET(ocfs2_super_block, s_max_nodes);
+ SHOW_OFFSET(ocfs2_super_block, s_reserved1);
+ SHOW_OFFSET(ocfs2_super_block, s_reserved2);
+ SHOW_OFFSET(ocfs2_super_block, s_first_cluster_group);
+ SHOW_OFFSET(ocfs2_super_block, s_label);
+ SHOW_OFFSET(ocfs2_super_block, s_uuid);
+
+ END_TYPE(ocfs2_super_block);
+ printf("\n");
}
static void print_ocfs2_local_alloc(void)
{
- ocfs2_local_alloc rec;
+ START_TYPE(ocfs2_local_alloc);
- SHOW_SIZEOF (ocfs2_local_alloc, rec);
-
- SHOW_OFFSET (la_bm_off, rec);
- SHOW_OFFSET (la_size, rec);
- SHOW_OFFSET (la_reserved1, rec);
- SHOW_OFFSET (la_reserved2, rec);
- SHOW_OFFSET (la_bitmap, rec);
- printf("\n");
+ SHOW_OFFSET(ocfs2_local_alloc, la_bm_off);
+ SHOW_OFFSET(ocfs2_local_alloc, la_size);
+ SHOW_OFFSET(ocfs2_local_alloc, la_reserved1);
+ SHOW_OFFSET(ocfs2_local_alloc, la_reserved2);
+ SHOW_OFFSET(ocfs2_local_alloc, la_bitmap);
+
+ END_TYPE(ocfs2_local_alloc);
+ printf("\n");
}
static void print_ocfs2_dinode(void)
{
- ocfs2_dinode rec;
+ START_TYPE(ocfs2_dinode);
- SHOW_SIZEOF (ocfs2_dinode, rec);
+ SHOW_OFFSET(ocfs2_dinode, i_signature);
+ SHOW_OFFSET(ocfs2_dinode, i_generation);
+ SHOW_OFFSET(ocfs2_dinode, i_suballoc_node);
+ SHOW_OFFSET(ocfs2_dinode, i_suballoc_bit);
+ SHOW_OFFSET(ocfs2_dinode, i_reserved0);
+ SHOW_OFFSET(ocfs2_dinode, i_clusters);
+ SHOW_OFFSET(ocfs2_dinode, i_uid);
+ SHOW_OFFSET(ocfs2_dinode, i_gid);
+ SHOW_OFFSET(ocfs2_dinode, i_size);
+ SHOW_OFFSET(ocfs2_dinode, i_mode);
+ SHOW_OFFSET(ocfs2_dinode, i_links_count);
+ SHOW_OFFSET(ocfs2_dinode, i_flags);
+ SHOW_OFFSET(ocfs2_dinode, i_atime);
+ SHOW_OFFSET(ocfs2_dinode, i_ctime);
+ SHOW_OFFSET(ocfs2_dinode, i_mtime);
+ SHOW_OFFSET(ocfs2_dinode, i_dtime);
+ SHOW_OFFSET(ocfs2_dinode, i_blkno);
+ SHOW_OFFSET(ocfs2_dinode, i_last_eb_blk);
+ SHOW_OFFSET(ocfs2_dinode, i_fs_generation);
+ SHOW_OFFSET(ocfs2_dinode, i_reserved1);
+ SHOW_OFFSET(ocfs2_dinode, i_reserved2);
- SHOW_OFFSET (i_signature, rec);
- SHOW_OFFSET (i_generation, rec);
- SHOW_OFFSET (i_suballoc_node, rec);
- SHOW_OFFSET (i_suballoc_bit, rec);
- SHOW_OFFSET (i_reserved0, rec);
- SHOW_OFFSET (i_clusters, rec);
- SHOW_OFFSET (i_uid, rec);
- SHOW_OFFSET (i_gid, rec);
- SHOW_OFFSET (i_size, rec);
- SHOW_OFFSET (i_mode, rec);
- SHOW_OFFSET (i_links_count, rec);
- SHOW_OFFSET (i_flags, rec);
- SHOW_OFFSET (i_atime, rec);
- SHOW_OFFSET (i_ctime, rec);
- SHOW_OFFSET (i_mtime, rec);
- SHOW_OFFSET (i_dtime, rec);
- SHOW_OFFSET (i_blkno, rec);
- SHOW_OFFSET (i_last_eb_blk, rec);
- SHOW_OFFSET (i_fs_generation, rec);
- SHOW_OFFSET (i_reserved1, rec);
- SHOW_OFFSET (i_reserved2, rec);
+ SHOW_OFFSET(ocfs2_dinode, id1.i_pad1);
+ SHOW_OFFSET(ocfs2_dinode, id1.dev1.i_rdev);
+ SHOW_OFFSET(ocfs2_dinode, id1.bitmap1.i_used);
+ SHOW_OFFSET(ocfs2_dinode, id1.bitmap1.i_total);
+ SHOW_OFFSET(ocfs2_dinode, id1.journal1.ij_flags);
+ SHOW_OFFSET(ocfs2_dinode, id1.journal1.ij_pad);
- SHOW_OFFSET (id1.i_pad1, rec);
- SHOW_OFFSET (id1.dev1.i_rdev, rec);
- SHOW_OFFSET (id1.bitmap1.i_used, rec);
- SHOW_OFFSET (id1.bitmap1.i_total, rec);
- SHOW_OFFSET (id1.journal1.ij_flags, rec);
- SHOW_OFFSET (id1.journal1.ij_pad, rec);
-
- SHOW_OFFSET (id2.i_super, rec);
- SHOW_OFFSET (id2.i_lab, rec);
- SHOW_OFFSET (id2.i_chain, rec);
- SHOW_OFFSET (id2.i_list, rec);
- SHOW_OFFSET (id2.i_symlink, rec);
- printf("\n");
+ SHOW_OFFSET(ocfs2_dinode, id2.i_super);
+ SHOW_OFFSET(ocfs2_dinode, id2.i_lab);
+ SHOW_OFFSET(ocfs2_dinode, id2.i_chain);
+ SHOW_OFFSET(ocfs2_dinode, id2.i_list);
+ SHOW_OFFSET(ocfs2_dinode, id2.i_symlink);
+
+ END_TYPE(ocfs2_dinode);
+ printf("\n");
}
static void print_ocfs2_dir_entry(void)
{
- struct ocfs2_dir_entry rec;
+ START_TYPE(struct ocfs2_dir_entry);
- SHOW_SIZEOF(struct ocfs2_dir_entry, rec);
-
- SHOW_OFFSET (inode, rec);
- SHOW_OFFSET (rec_len, rec);
- SHOW_OFFSET (name_len, rec);
- SHOW_OFFSET (file_type, rec);
- SHOW_OFFSET (name, rec);
- printf("\n");
+ SHOW_OFFSET(struct ocfs2_dir_entry, inode);
+ SHOW_OFFSET(struct ocfs2_dir_entry, rec_len);
+ SHOW_OFFSET(struct ocfs2_dir_entry, name_len);
+ SHOW_OFFSET(struct ocfs2_dir_entry, file_type);
+ SHOW_OFFSET(struct ocfs2_dir_entry, name);
+
+ END_TYPE(struct ocfs2_dir_entry);
+ printf("\n");
}
static void print_ocfs2_group_desc(void)
{
- ocfs2_group_desc rec;
+ START_TYPE(ocfs2_group_desc);
- SHOW_SIZEOF (ocfs2_group_desc, rec);
-
- SHOW_OFFSET (bg_signature, rec);
- SHOW_OFFSET (bg_size, rec);
- SHOW_OFFSET (bg_bits, rec);
- SHOW_OFFSET (bg_free_bits_count, rec);
- SHOW_OFFSET (bg_chain, rec);
- SHOW_OFFSET (bg_generation, rec);
- SHOW_OFFSET (bg_reserved1, rec);
- SHOW_OFFSET (bg_next_group, rec);
- SHOW_OFFSET (bg_parent_dinode, rec);
- SHOW_OFFSET (bg_blkno, rec);
- SHOW_OFFSET (bg_reserved2, rec);
- SHOW_OFFSET (bg_bitmap, rec);
- printf("\n");
+ SHOW_OFFSET(ocfs2_group_desc, bg_signature);
+ SHOW_OFFSET(ocfs2_group_desc, bg_size);
+ SHOW_OFFSET(ocfs2_group_desc, bg_bits);
+ SHOW_OFFSET(ocfs2_group_desc, bg_free_bits_count);
+ SHOW_OFFSET(ocfs2_group_desc, bg_chain);
+ SHOW_OFFSET(ocfs2_group_desc, bg_generation);
+ SHOW_OFFSET(ocfs2_group_desc, bg_reserved1);
+ SHOW_OFFSET(ocfs2_group_desc, bg_next_group);
+ SHOW_OFFSET(ocfs2_group_desc, bg_parent_dinode);
+ SHOW_OFFSET(ocfs2_group_desc, bg_blkno);
+ SHOW_OFFSET(ocfs2_group_desc, bg_reserved2);
+ SHOW_OFFSET(ocfs2_group_desc, bg_bitmap);
+
+ END_TYPE(ocfs2_group_desc);
+ printf("\n");
}
int main()
{
print_ocfs2_extent_rec();
print_ocfs2_chain_rec();
-
print_ocfs2_extent_list();
print_ocfs2_chain_list();
-
print_ocfs2_extent_block();
print_ocfs2_super_block();
-
print_ocfs2_local_alloc();
-
print_ocfs2_dinode();
-
print_ocfs2_dir_entry();
-
print_ocfs2_group_desc();
return 0;
More information about the Ocfs2-tools-commits
mailing list