commit 96b1eed47c7a2855669ae2675c526754e196d56f
Author: Erez_Zadok <[EMAIL PROTECTED]>
Date:   Thu May 31 23:13:16 2007 -0400

    debugging: indent code properly and cleanups
    
    Also make PRINT_CALLER look like a function.
    Fix one small bug in __show_branch_counts.
    
    Signed-off-by: Erez Zadok <[EMAIL PROTECTED]>

diff --git a/fs/unionfs/debug.c b/fs/unionfs/debug.c
index 9fc4706..b99bc46 100644
--- a/fs/unionfs/debug.c
+++ b/fs/unionfs/debug.c
@@ -17,7 +17,7 @@
  */
 
 /* it's always useful to know what part of the code called us */
-#define PRINT_CALLER                           \
+#define PRINT_CALLER()                         \
 do {                                           \
   if (!printed_caller) {                       \
     printk("PC:%s:%s:%d\n",fname,fxn,line);    \
@@ -49,19 +49,19 @@ void __unionfs_check_inode(const struct inode *inode,
        istart = ibstart(inode);
        iend = ibend(inode);
        if (istart > iend) {
-               PRINT_CALLER;
+               PRINT_CALLER();
                printk(" Ci0: inode=%p istart/end=%d:%d\n",
                       inode, istart, iend);
        }
        if ((istart == -1 && iend != -1) ||
            (istart != -1 && iend == -1)) {
-               PRINT_CALLER;
+               PRINT_CALLER();
                printk(" Ci1: inode=%p istart/end=%d:%d\n",
                       inode, istart, iend);
        }
        if (!S_ISDIR(inode->i_mode)) {
                if (iend != istart) {
-                       PRINT_CALLER;
+                       PRINT_CALLER();
                        printk(" Ci2: inode=%p istart=%d iend=%d\n",
                               inode, istart, iend);
                }
@@ -69,36 +69,43 @@ void __unionfs_check_inode(const struct inode *inode,
 
        for (bindex = sbstart(sb); bindex < sbmax(sb); bindex++) {
                if (!UNIONFS_I(inode)) {
-                       PRINT_CALLER;
+                       PRINT_CALLER();
                        printk(" Ci3: no inode_info %p\n", inode);
                        return;
                }
                if (!UNIONFS_I(inode)->lower_inodes) {
-                       PRINT_CALLER;
+                       PRINT_CALLER();
                        printk(" Ci4: no lower_inodes %p\n", inode);
                        return;
                }
                lower_inode = unionfs_lower_inode_idx(inode, bindex);
                if (lower_inode) {
                        if (bindex < istart || bindex > iend) {
-                               PRINT_CALLER;
-                               printk(" Ci5: inode/linode=%p:%p bindex=%d 
istart/end=%d:%d\n",
-                                      inode, lower_inode, bindex, istart, 
iend);
-                       } else if ((int)lower_inode == 0x5a5a5a5a) { /* freed 
inode! */
-                               PRINT_CALLER;
-                               printk(" Ci6: inode/linode=%p:%p bindex=%d 
istart/end=%d:%d\n",
-                                      inode, lower_inode, bindex, istart, 
iend);
+                               PRINT_CALLER();
+                               printk(" Ci5: inode/linode=%p:%p bindex=%d "
+                                      "istart/end=%d:%d\n", inode,
+                                      lower_inode, bindex, istart, iend);
+                       } else if ((int)lower_inode == 0x5a5a5a5a) {
+                               /* freed inode! */
+                               PRINT_CALLER();
+                               printk(" Ci6: inode/linode=%p:%p bindex=%d "
+                                      "istart/end=%d:%d\n", inode,
+                                      lower_inode, bindex, istart, iend);
                        }
                } else {        /* lower_inode == NULL */
                        if (bindex >= istart && bindex <= iend) {
                                /*
-                                * directories can have NULL lower inodes in 
b/t start/end, but
-                                * NOT if at the start/end range.
+                                * directories can have NULL lower inodes in
+                                * b/t start/end, but NOT if at the
+                                * start/end range.
                                 */
-                               if (!(S_ISDIR(inode->i_mode) && bindex > istart 
&& bindex < iend)) {
-                                       PRINT_CALLER;
-                                       printk(" Ci7: inode/linode=%p:%p 
bindex=%d istart/end=%d:%d\n",
-                                              inode, lower_inode, bindex, 
istart, iend);
+                               if (!(S_ISDIR(inode->i_mode) &&
+                                     bindex > istart && bindex < iend)) {
+                                       PRINT_CALLER();
+                                       printk(" Ci7: inode/linode=%p:%p "
+                                              "bindex=%d istart/end=%d:%d\n",
+                                              inode, lower_inode, bindex,
+                                              istart, iend);
                                }
                        }
                }
@@ -125,7 +132,7 @@ void __unionfs_check_dentry(const struct dentry *dentry,
 
        if ((dstart == -1 && dend != -1) ||
            (dstart != -1 && dend == -1)) {
-               PRINT_CALLER;
+               PRINT_CALLER();
                printk(" CD0: dentry=%p dstart/end=%d:%d\n",
                       dentry, dstart, dend);
        }
@@ -137,26 +144,34 @@ void __unionfs_check_dentry(const struct dentry *dentry,
                lower_dentry = unionfs_lower_dentry_idx(dentry, bindex);
                if (lower_dentry) {
                        if (bindex < dstart || bindex > dend) {
-                               PRINT_CALLER;
-                               printk(" CD1: dentry/lower=%p:%p(%p) bindex=%d 
dstart/end=%d:%d\n",
+                               PRINT_CALLER();
+                               printk(" CD1: dentry/lower=%p:%p(%p) "
+                                      "bindex=%d dstart/end=%d:%d\n",
                                       dentry, lower_dentry,
-                                      (lower_dentry ? lower_dentry->d_inode : 
(void *) 0xffffffff),
+                                      (lower_dentry ? lower_dentry->d_inode :
+                                       (void *) 0xffffffff),
                                       bindex, dstart, dend);
                        }
                } else {        /* lower_dentry == NULL */
                        if (bindex >= dstart && bindex <= dend) {
                                /*
-                                * Directories can have NULL lower inodes in 
b/t start/end, but NOT
-                                * if at the start/end range.  Ignore this 
rule, however, if this is
-                                * a NULL dentry or a deleted dentry.
+                                * Directories can have NULL lower inodes in
+                                * b/t start/end, but NOT if at the
+                                * start/end range.  Ignore this rule,
+                                * however, if this is a NULL dentry or a
+                                * deleted dentry.
                                 */
                                if (!d_deleted((struct dentry *) dentry) &&
-                                   inode && !(inode && S_ISDIR(inode->i_mode) 
&&
-                                              bindex > dstart && bindex < 
dend)) {
-                                       PRINT_CALLER;
-                                       printk(" CD2: dentry/lower=%p:%p(%p) 
bindex=%d dstart/end=%d:%d\n",
+                                   inode &&
+                                   !(inode && S_ISDIR(inode->i_mode) &&
+                                     bindex > dstart && bindex < dend)) {
+                                       PRINT_CALLER();
+                                       printk(" CD2: dentry/lower=%p:%p(%p) "
+                                              "bindex=%d dstart/end=%d:%d\n",
                                               dentry, lower_dentry,
-                                              (lower_dentry ? 
lower_dentry->d_inode : (void *) 0xffffffff),
+                                              (lower_dentry ?
+                                               lower_dentry->d_inode :
+                                               (void *) 0xffffffff),
                                               bindex, dstart, dend);
                                }
                        }
@@ -168,22 +183,27 @@ void __unionfs_check_dentry(const struct dentry *dentry,
                lower_mnt = unionfs_lower_mnt_idx(dentry, bindex);
                if (lower_mnt) {
                        if (bindex < dstart || bindex > dend) {
-                               PRINT_CALLER;
-                               printk(" CM0: dentry/lmnt=%p:%p bindex=%d 
dstart/end=%d:%d\n",
-                                      dentry, lower_mnt, bindex, dstart, dend);
+                               PRINT_CALLER();
+                               printk(" CM0: dentry/lmnt=%p:%p bindex=%d "
+                                      "dstart/end=%d:%d\n", dentry,
+                                      lower_mnt, bindex, dstart, dend);
                        }
                } else {        /* lower_mnt == NULL */
                        if (bindex >= dstart && bindex <= dend) {
                                /*
-                                * Directories can have NULL lower inodes in 
b/t start/end, but NOT
-                                * if at the start/end range.  Ignore this 
rule, however, if this is
-                                * a NULL dentry.
+                                * Directories can have NULL lower inodes in
+                                * b/t start/end, but NOT if at the
+                                * start/end range.  Ignore this rule,
+                                * however, if this is a NULL dentry.
                                 */
-                               if (inode && !(inode && S_ISDIR(inode->i_mode) 
&&
-                                              bindex > dstart && bindex < 
dend)) {
-                                       PRINT_CALLER;
-                                       printk(" CM1: dentry/lmnt=%p:%p 
bindex=%d dstart/end=%d:%d\n",
-                                              dentry, lower_mnt, bindex, 
dstart, dend);
+                               if (inode &&
+                                   !(inode && S_ISDIR(inode->i_mode) &&
+                                     bindex > dstart && bindex < dend)) {
+                                       PRINT_CALLER();
+                                       printk(" CM1: dentry/lmnt=%p:%p "
+                                              "bindex=%d dstart/end=%d:%d\n",
+                                              dentry, lower_mnt, bindex,
+                                              dstart, dend);
                                }
                        }
                }
@@ -197,29 +217,29 @@ void __unionfs_check_dentry(const struct dentry *dentry,
        BUG_ON(istart > iend);
        if ((istart == -1 && iend != -1) ||
            (istart != -1 && iend == -1)) {
-               PRINT_CALLER;
+               PRINT_CALLER();
                printk(" CI0: dentry/inode=%p:%p istart/end=%d:%d\n",
                       dentry, inode, istart, iend);
        }
        if (istart != dstart) {
-               PRINT_CALLER;
+               PRINT_CALLER();
                printk(" CI1: dentry/inode=%p:%p istart=%d dstart=%d\n",
                       dentry, inode, istart, dstart);
        }
        if (iend != dend) {
-               PRINT_CALLER;
+               PRINT_CALLER();
                printk(" CI2: dentry/inode=%p:%p iend=%d dend=%d\n",
                       dentry, inode, iend, dend);
        }
 
        if (!S_ISDIR(inode->i_mode)) {
                if (dend != dstart) {
-                       PRINT_CALLER;
+                       PRINT_CALLER();
                        printk(" CI3: dentry/inode=%p:%p dstart=%d dend=%d\n",
                               dentry, inode, dstart, dend);
                }
                if (iend != istart) {
-                       PRINT_CALLER;
+                       PRINT_CALLER();
                        printk(" CI4: dentry/inode=%p:%p istart=%d iend=%d\n",
                               dentry, inode, istart, iend);
                }
@@ -229,42 +249,53 @@ void __unionfs_check_dentry(const struct dentry *dentry,
                lower_inode = unionfs_lower_inode_idx(inode, bindex);
                if (lower_inode) {
                        if (bindex < istart || bindex > iend) {
-                               PRINT_CALLER;
-                               printk(" CI5: dentry/linode=%p:%p bindex=%d 
istart/end=%d:%d\n",
-                                      dentry, lower_inode, bindex, istart, 
iend);
-                       } else if ((int)lower_inode == 0x5a5a5a5a) { /* freed 
inode! */
-                               PRINT_CALLER;
-                               printk(" CI6: dentry/linode=%p:%p bindex=%d 
istart/end=%d:%d\n",
-                                      dentry, lower_inode, bindex, istart, 
iend);
+                               PRINT_CALLER();
+                               printk(" CI5: dentry/linode=%p:%p bindex=%d "
+                                      "istart/end=%d:%d\n", dentry,
+                                      lower_inode, bindex, istart, iend);
+                       } else if ((int)lower_inode == 0x5a5a5a5a) {
+                               /* freed inode! */
+                               PRINT_CALLER();
+                               printk(" CI6: dentry/linode=%p:%p bindex=%d "
+                                      "istart/end=%d:%d\n", dentry,
+                                      lower_inode, bindex, istart, iend);
                        }
                } else {        /* lower_inode == NULL */
                        if (bindex >= istart && bindex <= iend) {
                                /*
-                                * directories can have NULL lower inodes in 
b/t start/end, but
-                                * NOT if at the start/end range.
+                                * directories can have NULL lower inodes in
+                                * b/t start/end, but NOT if at the
+                                * start/end range.
                                 */
-                               if (!(S_ISDIR(inode->i_mode) && bindex > istart 
&& bindex < iend)) {
-                                       PRINT_CALLER;
-                                       printk(" CI7: dentry/linode=%p:%p 
bindex=%d istart/end=%d:%d\n",
-                                              dentry, lower_inode, bindex, 
istart, iend);
+                               if (!(S_ISDIR(inode->i_mode) &&
+                                     bindex > istart && bindex < iend)) {
+                                       PRINT_CALLER();
+                                       printk(" CI7: dentry/linode=%p:%p "
+                                              "bindex=%d istart/end=%d:%d\n",
+                                              dentry, lower_inode, bindex,
+                                              istart, iend);
                                }
                        }
                }
        }
 
        /*
-        * If it's a directory, then intermediate objects b/t start/end can be 
NULL.
-        * But, check that all three are NULL: lower dentry, mnt, and inode.
+        * If it's a directory, then intermediate objects b/t start/end can
+        * be NULL.  But, check that all three are NULL: lower dentry, mnt,
+        * and inode.
         */
        if (S_ISDIR(inode->i_mode))
                for (bindex = dstart+1; bindex < dend-1; bindex++) {
                        lower_inode = unionfs_lower_inode_idx(inode, bindex);
-                       lower_dentry = unionfs_lower_dentry_idx(dentry, bindex);
+                       lower_dentry = unionfs_lower_dentry_idx(dentry,
+                                                               bindex);
                        lower_mnt = unionfs_lower_mnt_idx(dentry, bindex);
                        if (!((lower_inode && lower_dentry && lower_mnt) ||
                              (!lower_inode && !lower_dentry && !lower_mnt)))
-                               printk(" Cx: lmnt/ldentry/linode=%p:%p:%p 
bindex=%d dstart/end=%d:%d\n",
-                                      lower_mnt, lower_dentry, lower_inode, 
bindex, dstart, dend);
+                               printk(" Cx: lmnt/ldentry/linode=%p:%p:%p "
+                                      "bindex=%d dstart/end=%d:%d\n",
+                                      lower_mnt, lower_dentry, lower_inode,
+                                      bindex, dstart, dend);
                }
 }
 
@@ -291,29 +322,29 @@ void __unionfs_check_file(const struct file *file,
 
        if ((fstart == -1 && fend != -1) ||
            (fstart != -1 && fend == -1)) {
-               PRINT_CALLER;
+               PRINT_CALLER();
                printk(" CF0: file/dentry=%p:%p fstart/end=%d:%d\n",
                       file, dentry, fstart, fend);
        }
        if (fstart != dstart) {
-               PRINT_CALLER;
+               PRINT_CALLER();
                printk(" CF1: file/dentry=%p:%p fstart=%d dstart=%d\n",
                       file, dentry, fstart, dstart);
        }
        if (fend != dend) {
-               PRINT_CALLER;
+               PRINT_CALLER();
                printk(" CF2: file/dentry=%p:%p fend=%d dend=%d\n",
                       file, dentry, fend, dend);
        }
        inode = dentry->d_inode;
        if (!S_ISDIR(inode->i_mode)) {
                if (fend != fstart) {
-                       PRINT_CALLER;
+                       PRINT_CALLER();
                        printk(" CF3: file/inode=%p:%p fstart=%d fend=%d\n",
                               file, inode, fstart, fend);
                }
                if (dend != dstart) {
-                       PRINT_CALLER;
+                       PRINT_CALLER();
                        printk(" CF4: file/dentry=%p:%p dstart=%d dend=%d\n",
                               file, dentry, dstart, dend);
                }
@@ -327,20 +358,24 @@ void __unionfs_check_file(const struct file *file,
                lower_file = unionfs_lower_file_idx(file, bindex);
                if (lower_file) {
                        if (bindex < fstart || bindex > fend) {
-                               PRINT_CALLER;
+                               PRINT_CALLER();
                                printk(" CF5: file/lower=%p:%p bindex=%d 
fstart/end=%d:%d\n",
                                       file, lower_file, bindex, fstart, fend);
                        }
                } else {        /* lower_file == NULL */
                        if (bindex >= fstart && bindex <= fend) {
                                /*
-                                * directories can have NULL lower inodes in 
b/t start/end, but
-                                * NOT if at the start/end range.
+                                * directories can have NULL lower inodes in
+                                * b/t start/end, but NOT if at the
+                                * start/end range.
                                 */
-                               if (!(S_ISDIR(inode->i_mode) && bindex > fstart 
&& bindex < fend)) {
-                                       PRINT_CALLER;
-                                       printk(" CF6: file/lower=%p:%p 
bindex=%d fstart/end=%d:%d\n",
-                                              file, lower_file, bindex, 
fstart, fend);
+                               if (!(S_ISDIR(inode->i_mode) &&
+                                     bindex > fstart && bindex < fend)) {
+                                       PRINT_CALLER();
+                                       printk(" CF6: file/lower=%p:%p "
+                                              "bindex=%d fstart/end=%d:%d\n",
+                                              file, lower_file, bindex,
+                                              fstart, fend);
                                }
                        }
                }
@@ -357,7 +392,7 @@ void __show_branch_counts(const struct super_block *sb,
        struct vfsmount *mnt;
 
        printk("BC:");
-       for (i=0; i<4; i++) {
+       for (i=0; i<sbmax(sb); i++) {
                mnt = UNIONFS_D(sb->s_root)->lower_paths[i].mnt;
                printk("%d:", (mnt ? atomic_read(&mnt->mnt_count) : -99));
        }
_______________________________________________
unionfs-cvs mailing list: http://unionfs.filesystems.org/
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs-cvs

Reply via email to