Merge with Linus' 2.6 tree
[powerpc.git] / fs / jffs / intrep.c
index 8cc6893..456d7e6 100644 (file)
@@ -175,8 +175,64 @@ jffs_hexdump(struct mtd_info *mtd, loff_t pos, int size)
        }
 }
 
+/* Print the contents of a node.  */
+static void
+jffs_print_node(struct jffs_node *n)
+{
+       D(printk("jffs_node: 0x%p\n", n));
+       D(printk("{\n"));
+       D(printk("        0x%08x, /* version  */\n", n->version));
+       D(printk("        0x%08x, /* data_offset  */\n", n->data_offset));
+       D(printk("        0x%08x, /* data_size  */\n", n->data_size));
+       D(printk("        0x%08x, /* removed_size  */\n", n->removed_size));
+       D(printk("        0x%08x, /* fm_offset  */\n", n->fm_offset));
+       D(printk("        0x%02x,       /* name_size  */\n", n->name_size));
+       D(printk("        0x%p, /* fm,  fm->offset: %u  */\n",
+                n->fm, (n->fm ? n->fm->offset : 0)));
+       D(printk("        0x%p, /* version_prev  */\n", n->version_prev));
+       D(printk("        0x%p, /* version_next  */\n", n->version_next));
+       D(printk("        0x%p, /* range_prev  */\n", n->range_prev));
+       D(printk("        0x%p, /* range_next  */\n", n->range_next));
+       D(printk("}\n"));
+}
+
 #endif
 
+/* Print the contents of a raw inode.  */
+static void
+jffs_print_raw_inode(struct jffs_raw_inode *raw_inode)
+{
+       D(printk("jffs_raw_inode: inode number: %u\n", raw_inode->ino));
+       D(printk("{\n"));
+       D(printk("        0x%08x, /* magic  */\n", raw_inode->magic));
+       D(printk("        0x%08x, /* ino  */\n", raw_inode->ino));
+       D(printk("        0x%08x, /* pino  */\n", raw_inode->pino));
+       D(printk("        0x%08x, /* version  */\n", raw_inode->version));
+       D(printk("        0x%08x, /* mode  */\n", raw_inode->mode));
+       D(printk("        0x%04x,     /* uid  */\n", raw_inode->uid));
+       D(printk("        0x%04x,     /* gid  */\n", raw_inode->gid));
+       D(printk("        0x%08x, /* atime  */\n", raw_inode->atime));
+       D(printk("        0x%08x, /* mtime  */\n", raw_inode->mtime));
+       D(printk("        0x%08x, /* ctime  */\n", raw_inode->ctime));
+       D(printk("        0x%08x, /* offset  */\n", raw_inode->offset));
+       D(printk("        0x%08x, /* dsize  */\n", raw_inode->dsize));
+       D(printk("        0x%08x, /* rsize  */\n", raw_inode->rsize));
+       D(printk("        0x%02x,       /* nsize  */\n", raw_inode->nsize));
+       D(printk("        0x%02x,       /* nlink  */\n", raw_inode->nlink));
+       D(printk("        0x%02x,       /* spare  */\n",
+                raw_inode->spare));
+       D(printk("        %u,          /* rename  */\n",
+                raw_inode->rename));
+       D(printk("        %u,          /* deleted  */\n",
+                raw_inode->deleted));
+       D(printk("        0x%02x,       /* accurate  */\n",
+                raw_inode->accurate));
+       D(printk("        0x%08x, /* dchksum  */\n", raw_inode->dchksum));
+       D(printk("        0x%04x,     /* nchksum  */\n", raw_inode->nchksum));
+       D(printk("        0x%04x,     /* chksum  */\n", raw_inode->chksum));
+       D(printk("}\n"));
+}
+
 #define flash_safe_acquire(arg)
 #define flash_safe_release(arg)
 
@@ -2507,64 +2563,6 @@ jffs_update_file(struct jffs_file *f, struct jffs_node *node)
        return 0;
 }
 
-/* Print the contents of a node.  */
-void
-jffs_print_node(struct jffs_node *n)
-{
-       D(printk("jffs_node: 0x%p\n", n));
-       D(printk("{\n"));
-       D(printk("        0x%08x, /* version  */\n", n->version));
-       D(printk("        0x%08x, /* data_offset  */\n", n->data_offset));
-       D(printk("        0x%08x, /* data_size  */\n", n->data_size));
-       D(printk("        0x%08x, /* removed_size  */\n", n->removed_size));
-       D(printk("        0x%08x, /* fm_offset  */\n", n->fm_offset));
-       D(printk("        0x%02x,       /* name_size  */\n", n->name_size));
-       D(printk("        0x%p, /* fm,  fm->offset: %u  */\n",
-                n->fm, (n->fm ? n->fm->offset : 0)));
-       D(printk("        0x%p, /* version_prev  */\n", n->version_prev));
-       D(printk("        0x%p, /* version_next  */\n", n->version_next));
-       D(printk("        0x%p, /* range_prev  */\n", n->range_prev));
-       D(printk("        0x%p, /* range_next  */\n", n->range_next));
-       D(printk("}\n"));
-}
-
-
-/* Print the contents of a raw inode.  */
-void
-jffs_print_raw_inode(struct jffs_raw_inode *raw_inode)
-{
-       D(printk("jffs_raw_inode: inode number: %u\n", raw_inode->ino));
-       D(printk("{\n"));
-       D(printk("        0x%08x, /* magic  */\n", raw_inode->magic));
-       D(printk("        0x%08x, /* ino  */\n", raw_inode->ino));
-       D(printk("        0x%08x, /* pino  */\n", raw_inode->pino));
-       D(printk("        0x%08x, /* version  */\n", raw_inode->version));
-       D(printk("        0x%08x, /* mode  */\n", raw_inode->mode));
-       D(printk("        0x%04x,     /* uid  */\n", raw_inode->uid));
-       D(printk("        0x%04x,     /* gid  */\n", raw_inode->gid));
-       D(printk("        0x%08x, /* atime  */\n", raw_inode->atime));
-       D(printk("        0x%08x, /* mtime  */\n", raw_inode->mtime));
-       D(printk("        0x%08x, /* ctime  */\n", raw_inode->ctime));
-       D(printk("        0x%08x, /* offset  */\n", raw_inode->offset));
-       D(printk("        0x%08x, /* dsize  */\n", raw_inode->dsize));
-       D(printk("        0x%08x, /* rsize  */\n", raw_inode->rsize));
-       D(printk("        0x%02x,       /* nsize  */\n", raw_inode->nsize));
-       D(printk("        0x%02x,       /* nlink  */\n", raw_inode->nlink));
-       D(printk("        0x%02x,       /* spare  */\n",
-                raw_inode->spare));
-       D(printk("        %u,          /* rename  */\n",
-                raw_inode->rename));
-       D(printk("        %u,          /* deleted  */\n",
-                raw_inode->deleted));
-       D(printk("        0x%02x,       /* accurate  */\n",
-                raw_inode->accurate));
-       D(printk("        0x%08x, /* dchksum  */\n", raw_inode->dchksum));
-       D(printk("        0x%04x,     /* nchksum  */\n", raw_inode->nchksum));
-       D(printk("        0x%04x,     /* chksum  */\n", raw_inode->chksum));
-       D(printk("}\n"));
-}
-
-
 /* Print the contents of a file.  */
 #if 0
 int
@@ -3399,6 +3397,9 @@ jffs_garbage_collect_thread(void *ptr)
                        siginfo_t info;
                        unsigned long signr = 0;
 
+                       if (try_to_freeze())
+                               continue;
+
                        spin_lock_irq(&current->sighand->siglock);
                        signr = dequeue_signal(current, &current->blocked, &info);
                        spin_unlock_irq(&current->sighand->siglock);