Re: [PATCH] ufs: move non-layout parts of ufs_fs.h to fs/ufs/

2007-08-05 Thread Christoph Hellwig
On Sat, Aug 04, 2007 at 08:36:49PM +0100, Al Viro wrote:
> On Sat, Aug 04, 2007 at 11:24:31PM +0400, Evgeniy Dushistov wrote:
> > Move prototypes and in-core structures to fs/ufs/ similar to what most
> > other filesystems already do.
> > 
> > I made little modifications: move also ufs debug macros and
> > mount options constants into fs/ufs/ufs.h, this stuff
> > also private for ufs.
> 
> Is there any reason to have util.h included directly?  Or to have
> it as a separate file and not a part of ufs.h, while we are at it...

I didn't want to do too many different things at once, but getting
rid of util.h sounds fine to me.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] ufs: move non-layout parts of ufs_fs.h to fs/ufs/

2007-08-05 Thread Christoph Hellwig
On Sat, Aug 04, 2007 at 08:36:49PM +0100, Al Viro wrote:
 On Sat, Aug 04, 2007 at 11:24:31PM +0400, Evgeniy Dushistov wrote:
  Move prototypes and in-core structures to fs/ufs/ similar to what most
  other filesystems already do.
  
  I made little modifications: move also ufs debug macros and
  mount options constants into fs/ufs/ufs.h, this stuff
  also private for ufs.
 
 Is there any reason to have util.h included directly?  Or to have
 it as a separate file and not a part of ufs.h, while we are at it...

I didn't want to do too many different things at once, but getting
rid of util.h sounds fine to me.
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] ufs: move non-layout parts of ufs_fs.h to fs/ufs/

2007-08-04 Thread Al Viro
On Sat, Aug 04, 2007 at 11:24:31PM +0400, Evgeniy Dushistov wrote:
> Move prototypes and in-core structures to fs/ufs/ similar to what most
> other filesystems already do.
> 
> I made little modifications: move also ufs debug macros and
> mount options constants into fs/ufs/ufs.h, this stuff
> also private for ufs.

Is there any reason to have util.h included directly?  Or to have
it as a separate file and not a part of ufs.h, while we are at it...
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] ufs: move non-layout parts of ufs_fs.h to fs/ufs/

2007-08-04 Thread Evgeniy Dushistov
Move prototypes and in-core structures to fs/ufs/ similar to what most
other filesystems already do.

I made little modifications: move also ufs debug macros and
mount options constants into fs/ufs/ufs.h, this stuff
also private for ufs.

 
Signed-off-by: Christoph Hellwig <[EMAIL PROTECTED]>
Signed-off-by: Evgeniy Dushistov <[EMAIL PROTECTED]>

---

Index: linux-2.6.23-rc2/fs/ufs/balloc.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/balloc.c
+++ linux-2.6.23-rc2/fs/ufs/balloc.c
@@ -19,6 +19,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6.23-rc2/fs/ufs/cylinder.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/cylinder.c
+++ linux-2.6.23-rc2/fs/ufs/cylinder.c
@@ -17,6 +17,7 @@
 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6.23-rc2/fs/ufs/dir.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/dir.c
+++ linux-2.6.23-rc2/fs/ufs/dir.c
@@ -20,6 +20,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6.23-rc2/fs/ufs/file.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/file.c
+++ linux-2.6.23-rc2/fs/ufs/file.c
@@ -27,6 +27,9 @@
 #include 
 #include  /* for sync_mapping_buffers() */
 
+#include "ufs.h"
+
+
 static int ufs_sync_file(struct file *file, struct dentry *dentry, int 
datasync)
 {
struct inode *inode = dentry->d_inode;
Index: linux-2.6.23-rc2/fs/ufs/ialloc.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/ialloc.c
+++ linux-2.6.23-rc2/fs/ufs/ialloc.c
@@ -34,6 +34,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6.23-rc2/fs/ufs/inode.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/inode.c
+++ linux-2.6.23-rc2/fs/ufs/inode.c
@@ -38,6 +38,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6.23-rc2/fs/ufs/namei.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/namei.c
+++ linux-2.6.23-rc2/fs/ufs/namei.c
@@ -31,7 +31,7 @@
 #include 
 #include 
 #include 
-#include "swab.h"  /* will go away - see comment in mknod() */
+#include "ufs.h"
 #include "util.h"
 
 static inline int ufs_add_nondir(struct dentry *dentry, struct inode *inode)
@@ -110,7 +110,6 @@ static int ufs_mknod (struct inode * dir
err = PTR_ERR(inode);
if (!IS_ERR(inode)) {
init_special_inode(inode, mode, rdev);
-   /* NOTE: that'll go when we get wide dev_t */
ufs_set_inode_dev(inode->i_sb, UFS_I(inode), rdev);
mark_inode_dirty(inode);
lock_kernel();
Index: linux-2.6.23-rc2/fs/ufs/super.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/super.c
+++ linux-2.6.23-rc2/fs/ufs/super.c
@@ -91,6 +91,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6.23-rc2/fs/ufs/symlink.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/symlink.c
+++ linux-2.6.23-rc2/fs/ufs/symlink.c
@@ -28,6 +28,8 @@
 #include 
 #include 
 #include 
+#include "ufs.h"
+
 
 static void *ufs_follow_link(struct dentry *dentry, struct nameidata *nd)
 {
Index: linux-2.6.23-rc2/fs/ufs/truncate.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/truncate.c
+++ linux-2.6.23-rc2/fs/ufs/truncate.c
@@ -46,6 +46,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6.23-rc2/fs/ufs/ufs.h
===
--- /dev/null
+++ linux-2.6.23-rc2/fs/ufs/ufs.h
@@ -0,0 +1,157 @@
+#ifndef _UFS_UFS_H
+#define _UFS_UFS_H 1
+
+#define UFS_MAX_GROUP_LOADED 8
+#define UFS_CGNO_EMPTY ((unsigned)-1)
+
+struct ufs_sb_private_info;
+struct ufs_cg_private_info;
+struct ufs_csum;
+
+struct ufs_sb_info {
+   struct ufs_sb_private_info * s_uspi;
+   struct ufs_csum * s_csp;
+   unsigned s_bytesex;
+   unsigned s_flags;
+   struct buffer_head ** s_ucg;
+   struct ufs_cg_private_info * s_ucpi[UFS_MAX_GROUP_LOADED];
+   unsigned s_cgno[UFS_MAX_GROUP_LOADED];
+   unsigned short s_cg_loaded;
+   unsigned s_mount_opt;
+};
+
+struct ufs_inode_info {
+   union {
+   __fs32  i_data[15];
+   __u8i_symlink[4*15];
+   __fs64  u2_i_data[15];
+   } i_u1;
+   __u32   i_flags;
+   __u32   i_shadow;
+   __u32   i_unused1;
+   __u32   i_unused2;
+   __u32   i_oeftflag;
+   __u16   i_osync;
+   __u64   

Re: [PATCH] ufs: move non-layout parts of ufs_fs.h to fs/ufs/

2007-08-04 Thread Evgeniy Dushistov
Move prototypes and in-core structures to fs/ufs/ similar to what most
other filesystems already do.

I made little modifications: move also ufs debug macros and
mount options constants into fs/ufs/ufs.h, this stuff
also private for ufs.

 
Signed-off-by: Christoph Hellwig [EMAIL PROTECTED]
Signed-off-by: Evgeniy Dushistov [EMAIL PROTECTED]

---

Index: linux-2.6.23-rc2/fs/ufs/balloc.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/balloc.c
+++ linux-2.6.23-rc2/fs/ufs/balloc.c
@@ -19,6 +19,7 @@
 #include linux/bitops.h
 #include asm/byteorder.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6.23-rc2/fs/ufs/cylinder.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/cylinder.c
+++ linux-2.6.23-rc2/fs/ufs/cylinder.c
@@ -17,6 +17,7 @@
 
 #include asm/byteorder.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6.23-rc2/fs/ufs/dir.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/dir.c
+++ linux-2.6.23-rc2/fs/ufs/dir.c
@@ -20,6 +20,7 @@
 #include linux/fs.h
 #include linux/ufs_fs.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6.23-rc2/fs/ufs/file.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/file.c
+++ linux-2.6.23-rc2/fs/ufs/file.c
@@ -27,6 +27,9 @@
 #include linux/ufs_fs.h
 #include linux/buffer_head.h /* for sync_mapping_buffers() */
 
+#include ufs.h
+
+
 static int ufs_sync_file(struct file *file, struct dentry *dentry, int 
datasync)
 {
struct inode *inode = dentry-d_inode;
Index: linux-2.6.23-rc2/fs/ufs/ialloc.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/ialloc.c
+++ linux-2.6.23-rc2/fs/ufs/ialloc.c
@@ -34,6 +34,7 @@
 #include linux/bitops.h
 #include asm/byteorder.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6.23-rc2/fs/ufs/inode.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/inode.c
+++ linux-2.6.23-rc2/fs/ufs/inode.c
@@ -38,6 +38,7 @@
 #include linux/smp_lock.h
 #include linux/buffer_head.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6.23-rc2/fs/ufs/namei.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/namei.c
+++ linux-2.6.23-rc2/fs/ufs/namei.c
@@ -31,7 +31,7 @@
 #include linux/fs.h
 #include linux/ufs_fs.h
 #include linux/smp_lock.h
-#include swab.h  /* will go away - see comment in mknod() */
+#include ufs.h
 #include util.h
 
 static inline int ufs_add_nondir(struct dentry *dentry, struct inode *inode)
@@ -110,7 +110,6 @@ static int ufs_mknod (struct inode * dir
err = PTR_ERR(inode);
if (!IS_ERR(inode)) {
init_special_inode(inode, mode, rdev);
-   /* NOTE: that'll go when we get wide dev_t */
ufs_set_inode_dev(inode-i_sb, UFS_I(inode), rdev);
mark_inode_dirty(inode);
lock_kernel();
Index: linux-2.6.23-rc2/fs/ufs/super.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/super.c
+++ linux-2.6.23-rc2/fs/ufs/super.c
@@ -91,6 +91,7 @@
 #include linux/mount.h
 #include linux/seq_file.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6.23-rc2/fs/ufs/symlink.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/symlink.c
+++ linux-2.6.23-rc2/fs/ufs/symlink.c
@@ -28,6 +28,8 @@
 #include linux/fs.h
 #include linux/namei.h
 #include linux/ufs_fs.h
+#include ufs.h
+
 
 static void *ufs_follow_link(struct dentry *dentry, struct nameidata *nd)
 {
Index: linux-2.6.23-rc2/fs/ufs/truncate.c
===
--- linux-2.6.23-rc2.orig/fs/ufs/truncate.c
+++ linux-2.6.23-rc2/fs/ufs/truncate.c
@@ -46,6 +46,7 @@
 #include linux/blkdev.h
 #include linux/sched.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6.23-rc2/fs/ufs/ufs.h
===
--- /dev/null
+++ linux-2.6.23-rc2/fs/ufs/ufs.h
@@ -0,0 +1,157 @@
+#ifndef _UFS_UFS_H
+#define _UFS_UFS_H 1
+
+#define UFS_MAX_GROUP_LOADED 8
+#define UFS_CGNO_EMPTY ((unsigned)-1)
+
+struct ufs_sb_private_info;
+struct ufs_cg_private_info;
+struct ufs_csum;
+
+struct ufs_sb_info {
+   struct ufs_sb_private_info * s_uspi;
+   struct ufs_csum * s_csp;
+   unsigned s_bytesex;
+   unsigned s_flags;
+   struct buffer_head ** s_ucg;
+   struct ufs_cg_private_info * s_ucpi[UFS_MAX_GROUP_LOADED];
+   unsigned s_cgno[UFS_MAX_GROUP_LOADED];
+   unsigned short s_cg_loaded;
+   unsigned s_mount_opt;
+};
+
+struct ufs_inode_info {
+   union {
+   __fs32  i_data[15];
+   __u8

Re: [PATCH] ufs: move non-layout parts of ufs_fs.h to fs/ufs/

2007-08-04 Thread Al Viro
On Sat, Aug 04, 2007 at 11:24:31PM +0400, Evgeniy Dushistov wrote:
 Move prototypes and in-core structures to fs/ufs/ similar to what most
 other filesystems already do.
 
 I made little modifications: move also ufs debug macros and
 mount options constants into fs/ufs/ufs.h, this stuff
 also private for ufs.

Is there any reason to have util.h included directly?  Or to have
it as a separate file and not a part of ufs.h, while we are at it...
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] ufs: move non-layout parts of ufs_fs.h to fs/ufs/

2007-08-03 Thread Christoph Hellwig
Move prototypes and in-core structures to fs/uf/ similar to what most
other filesystems already do.


Signed-off-by: Christoph Hellwig <[EMAIL PROTECTED]>

Index: linux-2.6/fs/ufs/balloc.c
===
--- linux-2.6.orig/fs/ufs/balloc.c  2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/balloc.c   2007-08-03 15:03:37.0 +0200
@@ -19,6 +19,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6/fs/ufs/cylinder.c
===
--- linux-2.6.orig/fs/ufs/cylinder.c2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/cylinder.c 2007-08-03 15:02:05.0 +0200
@@ -17,6 +17,7 @@
 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6/fs/ufs/dir.c
===
--- linux-2.6.orig/fs/ufs/dir.c 2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/dir.c  2007-08-03 15:02:09.0 +0200
@@ -20,6 +20,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6/fs/ufs/file.c
===
--- linux-2.6.orig/fs/ufs/file.c2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/file.c 2007-08-03 15:05:20.0 +0200
@@ -27,6 +27,9 @@
 #include 
 #include  /* for sync_mapping_buffers() */
 
+#include "ufs.h"
+
+
 static int ufs_sync_file(struct file *file, struct dentry *dentry, int 
datasync)
 {
struct inode *inode = dentry->d_inode;
Index: linux-2.6/fs/ufs/ialloc.c
===
--- linux-2.6.orig/fs/ufs/ialloc.c  2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/ialloc.c   2007-08-03 15:02:31.0 +0200
@@ -34,6 +34,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6/fs/ufs/inode.c
===
--- linux-2.6.orig/fs/ufs/inode.c   2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/inode.c2007-08-03 15:02:35.0 +0200
@@ -38,6 +38,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6/fs/ufs/namei.c
===
--- linux-2.6.orig/fs/ufs/namei.c   2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/namei.c2007-08-03 15:02:56.0 +0200
@@ -31,7 +31,7 @@
 #include 
 #include 
 #include 
-#include "swab.h"  /* will go away - see comment in mknod() */
+#include "ufs.h"
 #include "util.h"
 
 static inline int ufs_add_nondir(struct dentry *dentry, struct inode *inode)
@@ -110,7 +110,6 @@ static int ufs_mknod (struct inode * dir
err = PTR_ERR(inode);
if (!IS_ERR(inode)) {
init_special_inode(inode, mode, rdev);
-   /* NOTE: that'll go when we get wide dev_t */
ufs_set_inode_dev(inode->i_sb, UFS_I(inode), rdev);
mark_inode_dirty(inode);
lock_kernel();
Index: linux-2.6/fs/ufs/super.c
===
--- linux-2.6.orig/fs/ufs/super.c   2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/super.c2007-08-03 15:03:00.0 +0200
@@ -89,6 +89,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6/fs/ufs/symlink.c
===
--- linux-2.6.orig/fs/ufs/symlink.c 2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/symlink.c  2007-08-03 15:06:02.0 +0200
@@ -28,6 +28,8 @@
 #include 
 #include 
 #include 
+#include "ufs.h"
+
 
 static void *ufs_follow_link(struct dentry *dentry, struct nameidata *nd)
 {
Index: linux-2.6/fs/ufs/truncate.c
===
--- linux-2.6.orig/fs/ufs/truncate.c2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/truncate.c 2007-08-03 15:03:25.0 +0200
@@ -46,6 +46,7 @@
 #include 
 #include 
 
+#include "ufs.h"
 #include "swab.h"
 #include "util.h"
 
Index: linux-2.6/fs/ufs/ufs.h
===
--- /dev/null   1970-01-01 00:00:00.0 +
+++ linux-2.6/fs/ufs/ufs.h  2007-08-03 15:04:04.0 +0200
@@ -0,0 +1,121 @@
+#ifndef _UFS_UFS_H
+#define _UFS_UFS_H 1
+
+#define UFS_MAX_GROUP_LOADED 8
+#define UFS_CGNO_EMPTY ((unsigned)-1)
+
+struct ufs_sb_private_info;
+struct ufs_cg_private_info;
+struct ufs_csum;
+
+struct ufs_sb_info {
+   struct ufs_sb_private_info * s_uspi;
+   struct ufs_csum * s_csp;
+   unsigned s_bytesex;
+   unsigned s_flags;
+   struct buffer_head ** s_ucg;
+   struct ufs_cg_private_info * s_ucpi[UFS_MAX_GROUP_LOADED];
+   unsigned 

[PATCH] ufs: move non-layout parts of ufs_fs.h to fs/ufs/

2007-08-03 Thread Christoph Hellwig
Move prototypes and in-core structures to fs/uf/ similar to what most
other filesystems already do.


Signed-off-by: Christoph Hellwig [EMAIL PROTECTED]

Index: linux-2.6/fs/ufs/balloc.c
===
--- linux-2.6.orig/fs/ufs/balloc.c  2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/balloc.c   2007-08-03 15:03:37.0 +0200
@@ -19,6 +19,7 @@
 #include linux/bitops.h
 #include asm/byteorder.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6/fs/ufs/cylinder.c
===
--- linux-2.6.orig/fs/ufs/cylinder.c2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/cylinder.c 2007-08-03 15:02:05.0 +0200
@@ -17,6 +17,7 @@
 
 #include asm/byteorder.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6/fs/ufs/dir.c
===
--- linux-2.6.orig/fs/ufs/dir.c 2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/dir.c  2007-08-03 15:02:09.0 +0200
@@ -20,6 +20,7 @@
 #include linux/fs.h
 #include linux/ufs_fs.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6/fs/ufs/file.c
===
--- linux-2.6.orig/fs/ufs/file.c2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/file.c 2007-08-03 15:05:20.0 +0200
@@ -27,6 +27,9 @@
 #include linux/ufs_fs.h
 #include linux/buffer_head.h /* for sync_mapping_buffers() */
 
+#include ufs.h
+
+
 static int ufs_sync_file(struct file *file, struct dentry *dentry, int 
datasync)
 {
struct inode *inode = dentry-d_inode;
Index: linux-2.6/fs/ufs/ialloc.c
===
--- linux-2.6.orig/fs/ufs/ialloc.c  2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/ialloc.c   2007-08-03 15:02:31.0 +0200
@@ -34,6 +34,7 @@
 #include linux/bitops.h
 #include asm/byteorder.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6/fs/ufs/inode.c
===
--- linux-2.6.orig/fs/ufs/inode.c   2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/inode.c2007-08-03 15:02:35.0 +0200
@@ -38,6 +38,7 @@
 #include linux/smp_lock.h
 #include linux/buffer_head.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6/fs/ufs/namei.c
===
--- linux-2.6.orig/fs/ufs/namei.c   2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/namei.c2007-08-03 15:02:56.0 +0200
@@ -31,7 +31,7 @@
 #include linux/fs.h
 #include linux/ufs_fs.h
 #include linux/smp_lock.h
-#include swab.h  /* will go away - see comment in mknod() */
+#include ufs.h
 #include util.h
 
 static inline int ufs_add_nondir(struct dentry *dentry, struct inode *inode)
@@ -110,7 +110,6 @@ static int ufs_mknod (struct inode * dir
err = PTR_ERR(inode);
if (!IS_ERR(inode)) {
init_special_inode(inode, mode, rdev);
-   /* NOTE: that'll go when we get wide dev_t */
ufs_set_inode_dev(inode-i_sb, UFS_I(inode), rdev);
mark_inode_dirty(inode);
lock_kernel();
Index: linux-2.6/fs/ufs/super.c
===
--- linux-2.6.orig/fs/ufs/super.c   2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/super.c2007-08-03 15:03:00.0 +0200
@@ -89,6 +89,7 @@
 #include linux/vfs.h
 #include linux/log2.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6/fs/ufs/symlink.c
===
--- linux-2.6.orig/fs/ufs/symlink.c 2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/symlink.c  2007-08-03 15:06:02.0 +0200
@@ -28,6 +28,8 @@
 #include linux/fs.h
 #include linux/namei.h
 #include linux/ufs_fs.h
+#include ufs.h
+
 
 static void *ufs_follow_link(struct dentry *dentry, struct nameidata *nd)
 {
Index: linux-2.6/fs/ufs/truncate.c
===
--- linux-2.6.orig/fs/ufs/truncate.c2007-08-03 15:01:44.0 +0200
+++ linux-2.6/fs/ufs/truncate.c 2007-08-03 15:03:25.0 +0200
@@ -46,6 +46,7 @@
 #include linux/blkdev.h
 #include linux/sched.h
 
+#include ufs.h
 #include swab.h
 #include util.h
 
Index: linux-2.6/fs/ufs/ufs.h
===
--- /dev/null   1970-01-01 00:00:00.0 +
+++ linux-2.6/fs/ufs/ufs.h  2007-08-03 15:04:04.0 +0200
@@ -0,0 +1,121 @@
+#ifndef _UFS_UFS_H
+#define _UFS_UFS_H 1
+
+#define UFS_MAX_GROUP_LOADED 8
+#define UFS_CGNO_EMPTY ((unsigned)-1)
+
+struct ufs_sb_private_info;
+struct ufs_cg_private_info;
+struct ufs_csum;
+
+struct ufs_sb_info {
+   struct