diff -urpN linux-orig/fs/super.c linux-patched/fs/super.c
--- linux-orig/fs/super.c	2006-03-03 14:28:28.000000000 -0600
+++ linux-patched/fs/super.c	2006-03-03 15:25:20.000000000 -0600
@@ -51,7 +51,7 @@ spinlock_t sb_lock = SPIN_LOCK_UNLOCKED;
  *	Allocates and initializes a new &struct super_block.  alloc_super()
  *	returns a pointer new superblock or %NULL if allocation had failed.
  */
-static struct super_block *alloc_super(void)
+struct super_block *alloc_super(void)
 {
 	struct super_block *s = kmalloc(sizeof(struct super_block),  GFP_USER);
 	static struct super_operations default_op;
@@ -87,6 +87,8 @@ out:
 	return s;
 }
 
+EXPORT_SYMBOL(alloc_super);
+
 /**
  *	destroy_super	-	frees a superblock
  *	@s: superblock to free
diff -urpN linux-orig/include/linux/fs.h linux-patched/include/linux/fs.h
--- linux-orig/include/linux/fs.h	2006-03-03 14:28:29.000000000 -0600
+++ linux-patched/include/linux/fs.h	2006-03-03 15:25:20.000000000 -0600
@@ -1171,6 +1171,7 @@ void generic_shutdown_super(struct super
 void kill_block_super(struct super_block *sb);
 void kill_anon_super(struct super_block *sb);
 void kill_litter_super(struct super_block *sb);
+struct super_block *alloc_super(void);
 void deactivate_super(struct super_block *sb);
 int set_anon_super(struct super_block *s, void *data);
 struct super_block *sget(struct file_system_type *type,
