From mboxrd@z Thu Jan 1 00:00:00 1970 From: swhiteho@redhat.com Date: Mon, 10 Nov 2008 10:31:04 +0000 Subject: [Cluster-devel] [PATCH] GFS2: Add more detail to debugfs glock dumps In-Reply-To: <1226313064-2584-9-git-send-email-swhiteho@redhat.com> References: <1226313064-2584-1-git-send-email-swhiteho@redhat.com> <1226313064-2584-2-git-send-email-swhiteho@redhat.com> <1226313064-2584-3-git-send-email-swhiteho@redhat.com> <1226313064-2584-4-git-send-email-swhiteho@redhat.com> <1226313064-2584-5-git-send-email-swhiteho@redhat.com> <1226313064-2584-6-git-send-email-swhiteho@redhat.com> <1226313064-2584-7-git-send-email-swhiteho@redhat.com> <1226313064-2584-8-git-send-email-swhiteho@redhat.com> <1226313064-2584-9-git-send-email-swhiteho@redhat.com> Message-ID: <1226313064-2584-10-git-send-email-swhiteho@redhat.com> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit From: Steven Whitehouse Although the glock dumps print quite a lot of information about the glocks themselves, there are more things which can be usefully added to the dump realting to the objects themselves. This patch adds a few more fields to the inode and resource group lines, which should be useful for debugging. Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/glops.c b/fs/gfs2/glops.c index 848d64c..68ee665 100644 --- a/fs/gfs2/glops.c +++ b/fs/gfs2/glops.c @@ -260,10 +260,13 @@ static int inode_go_dump(struct seq_file *seq, const struct gfs2_glock *gl) const struct gfs2_inode *ip = gl->gl_object; if (ip == NULL) return 0; - gfs2_print_dbg(seq, " I: n:%llu/%llu t:%u f:0x%08lx\n", + gfs2_print_dbg(seq, " I: n:%llu/%llu t:%u f:0x%02lx d:0x%08x s:%llu/%llu\n", (unsigned long long)ip->i_no_formal_ino, (unsigned long long)ip->i_no_addr, - IF2DT(ip->i_inode.i_mode), ip->i_flags); + IF2DT(ip->i_inode.i_mode), ip->i_flags, + (unsigned int)ip->i_diskflags, + (unsigned long long)ip->i_inode.i_size, + (unsigned long long)ip->i_disksize); return 0; } @@ -318,7 +321,9 @@ static int rgrp_go_dump(struct seq_file *seq, const struct gfs2_glock *gl) const struct gfs2_rgrpd *rgd = gl->gl_object; if (rgd == NULL) return 0; - gfs2_print_dbg(seq, " R: n:%llu\n", (unsigned long long)rgd->rd_addr); + gfs2_print_dbg(seq, " R: n:%llu f:%02x b:%u/%u i:%u\n", + (unsigned long long)rgd->rd_addr, rgd->rd_flags, + rgd->rd_free, rgd->rd_free_clone, rgd->rd_dinodes); return 0; } -- 1.5.5.1