]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/gfs2/lops.h
Driver Core: fix bug in device_rename() for SYSFS_DEPRECATED=y
[linux-2.6-omap-h63xx.git] / fs / gfs2 / lops.h
index 8a1029d3d389a38be625af866d2255732e2fa63c..41a00df755879dea4018ae332f40a45155bc9fb6 100644 (file)
@@ -4,12 +4,22 @@
  *
  * This copyrighted material is made available to anyone wishing to use,
  * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU General Public License v.2.
+ * of the GNU General Public License version 2.
  */
 
 #ifndef __LOPS_DOT_H__
 #define __LOPS_DOT_H__
 
+#include <linux/list.h>
+#include "incore.h"
+
+#define BUF_OFFSET \
+       ((sizeof(struct gfs2_log_descriptor) + sizeof(__be64) - 1) & \
+        ~(sizeof(__be64) - 1))
+#define DATABUF_OFFSET \
+       ((sizeof(struct gfs2_log_descriptor) + (2 * sizeof(__be64) - 1)) & \
+        ~(2 * sizeof(__be64) - 1))
+
 extern const struct gfs2_log_operations gfs2_glock_lops;
 extern const struct gfs2_log_operations gfs2_buf_lops;
 extern const struct gfs2_log_operations gfs2_revoke_lops;
@@ -18,6 +28,22 @@ extern const struct gfs2_log_operations gfs2_databuf_lops;
 
 extern const struct gfs2_log_operations *gfs2_log_ops[];
 
+static inline unsigned int buf_limit(struct gfs2_sbd *sdp)
+{
+       unsigned int limit;
+
+       limit = (sdp->sd_sb.sb_bsize - BUF_OFFSET) / sizeof(__be64);
+       return limit;
+}
+
+static inline unsigned int databuf_limit(struct gfs2_sbd *sdp)
+{
+       unsigned int limit;
+
+       limit = (sdp->sd_sb.sb_bsize - DATABUF_OFFSET) / (2 * sizeof(__be64));
+       return limit;
+}
+
 static inline void lops_init_le(struct gfs2_log_element *le,
                                const struct gfs2_log_operations *lops)
 {
@@ -57,7 +83,7 @@ static inline void lops_after_commit(struct gfs2_sbd *sdp, struct gfs2_ail *ai)
 }
 
 static inline void lops_before_scan(struct gfs2_jdesc *jd,
-                                   struct gfs2_log_header *head,
+                                   struct gfs2_log_header_host *head,
                                    unsigned int pass)
 {
        int x;