From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Price Date: Fri, 11 Sep 2015 11:45:05 +0100 Subject: [Cluster-devel] [PATCH 2/2] gfs2_edit: Add attribute printf for print_gfs2 In-Reply-To: <1441922742-9212-2-git-send-email-andreas.gruenbacher@gmail.com> References: <1441922742-9212-1-git-send-email-andreas.gruenbacher@gmail.com> <1441922742-9212-2-git-send-email-andreas.gruenbacher@gmail.com> Message-ID: <55F2B0B1.6070401@redhat.com> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit On 10/09/15 23:05, Andreas Gruenbacher wrote: > Add the appropriate function attribute for the printf-style function print_gfs2 > and clean up the resulting fallout. Both patches look good to me, thanks. I've pushed them both along with the savemeta speedup patch I posted last week. Andy > Signed-off-by: Andreas Gruenbacher > --- > gfs2/edit/extended.c | 22 +++++++++++----------- > gfs2/edit/gfs2hex.c | 2 +- > gfs2/edit/gfs2hex.h | 2 +- > gfs2/edit/hexedit.c | 20 ++++++++++---------- > gfs2/edit/journal.c | 14 +++++++------- > gfs2/edit/savemeta.c | 2 +- > 6 files changed, 31 insertions(+), 31 deletions(-) > > diff --git a/gfs2/edit/extended.c b/gfs2/edit/extended.c > index a13827e..c01427f 100644 > --- a/gfs2/edit/extended.c > +++ b/gfs2/edit/extended.c > @@ -178,7 +178,7 @@ static int display_indirect(struct iinfo *ind, int indblocks, int level, > print_gfs2("%d => ", pndx); > if (termlines) > move(line,9); > - print_gfs2("0x%llx / %lld", ind->ii[pndx].block, > + print_gfs2("0x%"PRIx64" / %"PRId64, ind->ii[pndx].block, > ind->ii[pndx].block); > if (termlines) { > if (edit_row[dmode] >= 0 && > @@ -206,7 +206,7 @@ static int display_indirect(struct iinfo *ind, int indblocks, int level, > if (human_off > 1024.0) { h = 'T'; human_off /= 1024.0; } > if (human_off > 1024.0) { h = 'P'; human_off /= 1024.0; } > if (human_off > 1024.0) { h = 'E'; human_off /= 1024.0; } > - print_gfs2("(data offset 0x%llx / %lld / %6.2f%c)", > + print_gfs2("(data offset 0x%"PRIx64" / %"PRId64" / %6.2f%c)", > file_offset, file_offset, human_off, h); > print_gfs2(" "); > } > @@ -297,8 +297,8 @@ static void print_inode_type(__be16 de_type) > } > > #ifdef GFS2_HAS_LEAF_HINTS > -#define LEAF_HINT_FMTS "lf_inode: 0x%"PRIx64", lf_dist: %"PRIu32", " \ > - "lf_nsec: %"PRIu32", lf_sec: %"PRIu64", " > +#define LEAF_HINT_FMTS "lf_inode: 0x%llx, lf_dist: %u, " \ > + "lf_nsec: %u, lf_sec: %llu, " > #define LEAF_HINT_FIELDS(lp) lp->lf_inode, lp->lf_dist, lp->lf_nsec, lp->lf_sec, > #else > #define LEAF_HINT_FMTS > @@ -342,7 +342,7 @@ static int display_leaf(struct iinfo *ind) > strcpy(edit_fmt, "%llx"); > } > } > - print_gfs2("%d/%d [%08x] %lld/%lld (0x%llx/0x%llx) +%u: ", > + print_gfs2("%d/%d [%08x] %lld/%"PRId64" (0x%llx/0x%"PRIx64") +%u: ", > total_dirents, d + 1, > ind->ii[0].dirent[d].dirent.de_hash, > ind->ii[0].dirent[d].dirent.de_inum.no_formal_ino, > @@ -429,7 +429,7 @@ static void print_block_details(struct iinfo *ind, int level, int cur_height, > eol(0); > if (termlines) > move(line,9); > - print_gfs2("Continuation block 0x%llx / %lld", > + print_gfs2("Continuation block 0x%"PRIx64" / %"PRId64, > thisblk, thisblk); > } > } > @@ -451,7 +451,7 @@ static int print_gfs_jindex(struct gfs2_inode *dij) > char jbuf[sizeof(struct gfs_jindex)]; > > start_line = line; > - print_gfs2("Journal index entries found: %d.", > + print_gfs2("Journal index entries found: %lld.", > dij->i_di.di_size / sizeof(struct gfs_jindex)); > eol(0); > lines_per_row[dmode] = 4; > @@ -493,7 +493,7 @@ static int print_gfs2_jindex(void) > if (strncmp(indirect->ii[0].dirent[d].filename, "journal", 7)) > continue; > ip = lgfs2_inode_read(&sbd, indirect->ii[0].dirent[d].block); > - print_gfs2("%s: 0x%-5x %dMB ", > + print_gfs2("%s: 0x%-5"PRIx64" %lldMB ", > indirect->ii[0].dirent[d].filename, > indirect->ii[0].dirent[d].block, > ip->i_di.di_size / 1048576); > @@ -520,7 +520,7 @@ static int parse_rindex(struct gfs2_inode *dip, int print_rindex) > char highlighted_addr[32]; > > start_line = line; > - print_gfs2("RG index entries found: %d.", dip->i_di.di_size / > + print_gfs2("RG index entries found: %lld.", dip->i_di.di_size / > sizeof(struct gfs2_rindex)); > eol(0); > lines_per_row[dmode] = 6; > @@ -593,7 +593,7 @@ static int print_inum(struct gfs2_inode *dii) > return -1; > } > inodenum = be64_to_cpu(inum); > - print_gfs2("Next inode num = %lld (0x%llx)", inodenum, inodenum); > + print_gfs2("Next inode num = %"PRId64" (0x%"PRIx64")", inodenum, inodenum); > eol(0); > return 0; > } > @@ -628,7 +628,7 @@ static int print_quota(struct gfs2_inode *diq) > > print_gfs2("quota file contents:"); > eol(0); > - print_gfs2("quota entries found: %d.", diq->i_di.di_size / sizeof(q)); > + print_gfs2("quota entries found: %lld.", diq->i_di.di_size / sizeof(q)); > eol(0); > for (i=0; ; i++) { > error = gfs2_readi(diq, (void *)&qbuf, i * sizeof(q), sizeof(qbuf)); > diff --git a/gfs2/edit/gfs2hex.c b/gfs2/edit/gfs2hex.c > index dc6bb8f..101a063 100644 > --- a/gfs2/edit/gfs2hex.c > +++ b/gfs2/edit/gfs2hex.c > @@ -98,7 +98,7 @@ void eol(int col) /* end of line */ > } > } > > -void __attribute__((format (printf, 1, 2))) print_gfs2(const char *fmt, ...) > +void print_gfs2(const char *fmt, ...) > { > va_list args; > char string[PATH_MAX]; > diff --git a/gfs2/edit/gfs2hex.h b/gfs2/edit/gfs2hex.h > index 3c08a19..1bd83c3 100644 > --- a/gfs2/edit/gfs2hex.h > +++ b/gfs2/edit/gfs2hex.h > @@ -7,7 +7,7 @@ extern int display_gfs2(void); > extern int edit_gfs2(void); > extern void do_dinode_extended(struct gfs2_dinode *di, > struct gfs2_buffer_head *lbh); > -extern void print_gfs2(const char *fmt, ...); > +extern void print_gfs2(const char *fmt, ...) __attribute__((format (printf, 1, 2))); > extern uint64_t do_leaf_extended(char *dlebuf, struct iinfo *indir); > extern void eol(int col); > > diff --git a/gfs2/edit/hexedit.c b/gfs2/edit/hexedit.c > index 4df1b9f..70406df 100644 > --- a/gfs2/edit/hexedit.c > +++ b/gfs2/edit/hexedit.c > @@ -332,14 +332,14 @@ int display_block_type(int from_restore) > else if (block == JOURNALS_DUMMY_BLOCK) > print_gfs2("Journal Status: "); > else > - print_gfs2("%lld (0x%llx)", block, block); > + print_gfs2("%"PRId64" (0x%"PRIx64")", block, block); > if (termlines) { > if (edit_row[dmode] == -1) > COLORS_NORMAL; > } > print_gfs2(" "); > if (!from_restore) > - print_gfs2("of %llu (0x%llx) ", max_block, max_block); > + print_gfs2("of %"PRIu64" (0x%"PRIx64") ", max_block, max_block); > if (block == RGLIST_DUMMY_BLOCK) { > ret_type = GFS2_METATYPE_RG; > struct_len = sbd.gfs1 ? sizeof(struct gfs_rgrp) : > @@ -580,9 +580,9 @@ static int hexdump(uint64_t startaddr, int len, int trunc_zeros, > COLORS_OFFSETS; /* cyan for offsets */ > } > if (startaddr < 0xffffffff) > - print_gfs2("%.8llx", startaddr + l); > + print_gfs2("%.8"PRIx64, startaddr + l); > else > - print_gfs2("%.16llx", startaddr + l); > + print_gfs2("%.16"PRIx64, startaddr + l); > if (termlines) { > if (l < struct_len) > COLORS_NORMAL; /* normal part of structure */ > @@ -670,7 +670,7 @@ static int hexdump(uint64_t startaddr, int len, int trunc_zeros, > f = &m->fields[n]; > if (print_field >= f->offset && > print_field < (f->offset + f->length)) { > - print_gfs2(m->fields[n].name); > + print_gfs2("%s", m->fields[n].name); > break; > } > } > @@ -699,12 +699,12 @@ static int hexdump(uint64_t startaddr, int len, int trunc_zeros, > if (line - 3 > last_entry_onscreen[dmode]) > last_entry_onscreen[dmode] = line - 3; > if (flagref && be64_to_cpu(*ref) == flagref) > - print_gfs2("<------------------------- ref in 0x%llx " > - "to 0x%llx", ref_blk, flagref); > + print_gfs2("<------------------------- ref in 0x%"PRIx64" " > + "to 0x%"PRIx64, ref_blk, flagref); > ref++; > if (flagref && be64_to_cpu(*ref) == flagref) > - print_gfs2("<------------------------- ref in 0x%llx " > - "to 0x%llx", ref_blk, flagref); > + print_gfs2("<------------------------- ref in 0x%"PRIx64" " > + "to 0x%"PRIx64, ref_blk, flagref); > ref++; > eol(0); > l += 16; > @@ -849,7 +849,7 @@ static void set_rgrp_flags(int rgnum, uint32_t new_flags, int modify, int full) > } else { > if (full) { > print_gfs2("RG #%d", rgnum); > - print_gfs2(" located at: %llu (0x%llx)", rgblk, rgblk); > + print_gfs2(" located at: %"PRIu64" (0x%"PRIx64")", rgblk, rgblk); > eol(0); > if (sbd.gfs1) > gfs_rgrp_print(&rg.rg1); > diff --git a/gfs2/edit/journal.c b/gfs2/edit/journal.c > index a2aeb2c..15e02de 100644 > --- a/gfs2/edit/journal.c > +++ b/gfs2/edit/journal.c > @@ -392,7 +392,7 @@ static int process_ld(uint64_t abs_block, uint64_t wrappt, uint64_t j_size, > bitblk); > > if (*prnt) { > - print_gfs2("0x%llx (j+%4llx): Log descriptor, ", > + print_gfs2("0x%"PRIx64" (j+%4"PRIx64"): Log descriptor, ", > abs_block, ((jb + wrappt) % j_size) / sbd.bsize); > print_gfs2("type %d ", ld.ld_type); > > @@ -586,9 +586,9 @@ void dump_journal(const char *journal, int tblk) > gfs_log_header_in(&lh1, &dummy_bh); > check_journal_wrap(lh1.lh_sequence, > &highest_seq); > - print_gfs2("0x%llx (j+%4llx): Log header: " > - "Flags:%x, Seq: 0x%x, 1st: 0x%x, " > - "tail: 0x%x, last: 0x%x", > + print_gfs2("0x%"PRIx64" (j+%4"PRIx64"): Log header: " > + "Flags:%x, Seq: 0x%llx, 1st: 0x%llx, " > + "tail: 0x%llx, last: 0x%llx", > abs_block, jb + wrappt, > lh1.lh_flags, lh1.lh_sequence, > lh1.lh_first, lh1.lh_tail, > @@ -597,8 +597,8 @@ void dump_journal(const char *journal, int tblk) > gfs2_log_header_in(&lh, &dummy_bh); > check_journal_wrap(lh.lh_sequence, > &highest_seq); > - print_gfs2("0x%llx (j+%4llx): Log header: Seq" > - ": 0x%x, tail: 0x%x, blk: 0x%x%s", > + print_gfs2("0x%"PRIx64" (j+%4"PRIx64"): Log header: Seq" > + ": 0x%llx, tail: 0x%x, blk: 0x%x%s", > abs_block, ((jb + wrappt) % j_size) > / sbd.bsize, lh.lh_sequence, > lh.lh_tail, lh.lh_blkno, > @@ -609,7 +609,7 @@ void dump_journal(const char *journal, int tblk) > eol(0); > } else if ((ld_blocks > 0) && > (sbd.gfs1 || block_type == GFS2_METATYPE_LB)) { > - print_gfs2("0x%llx (j+%4llx): Log descriptor" > + print_gfs2("0x%"PRIx64" (j+%4"PRIx64"): Log descriptor" > " continuation block", abs_block, jb); > eol(0); > print_gfs2(" "); > diff --git a/gfs2/edit/savemeta.c b/gfs2/edit/savemeta.c > index b68b0ff..bd34fb1 100644 > --- a/gfs2/edit/savemeta.c > +++ b/gfs2/edit/savemeta.c > @@ -1012,7 +1012,7 @@ static int restore_data(int fd, gzFile gzin_fd, off_t pos, int printonly) > bh = NULL; > break; > } else if (printonly == 1) { > - print_gfs2("%d (l=0x%x): ", blks_saved, savedata->siglen); > + print_gfs2("%"PRId64" (l=0x%x): ", blks_saved, savedata->siglen); > display_block_type(TRUE); > } > bh = NULL; >