- patches.fixes/patch-2.6.11-rc1: 2.6.11-rc1.
[linux-flexiantxendom0-3.2.10.git] / include / linux / jbd.h
index 3d9451b..fbc8eb9 100644 (file)
@@ -277,13 +277,15 @@ void buffer_assertion_failure(struct buffer_head *bh);
 #define J_EXPECT_JH(jh, expr, why...)  J_ASSERT_JH(jh, expr)
 #else
 #define __journal_expect(expr, why...)                                      \
-       do {                                                                 \
-               if (!(expr)) {                                               \
+       ({                                                                   \
+               int val = (expr);                                            \
+               if (!val) {                                                  \
                        printk(KERN_ERR                                      \
                                "EXT3-fs unexpected failure: %s;\n",# expr); \
-                       printk(KERN_ERR why);                                \
+                       printk(KERN_ERR why "\n");                           \
                }                                                            \
-       } while (0)
+               val;                                                         \
+       })
 #define J_EXPECT(expr, why...)         __journal_expect(expr, ## why)
 #define J_EXPECT_BH(bh, expr, why...)  __journal_expect(expr, ## why)
 #define J_EXPECT_JH(jh, expr, why...)  __journal_expect(expr, ## why)
@@ -874,7 +876,7 @@ extern int   journal_dirty_data (handle_t *, struct buffer_head *);
 extern int      journal_dirty_metadata (handle_t *, struct buffer_head *);
 extern void     journal_release_buffer (handle_t *, struct buffer_head *,
                                                int credits);
-extern void     journal_forget (handle_t *, struct buffer_head *);
+extern int      journal_forget (handle_t *, struct buffer_head *);
 extern void     journal_sync_buffer (struct buffer_head *);
 extern int      journal_invalidatepage(journal_t *,
                                struct page *, unsigned long);