[Unionfs] bug on rhel4

Stuart Midgley stuartm at dugeo.com
Mon Sep 17 09:52:04 EDT 2007


Evening

I have been trying to get unionfs 2.1.3 (and previously 2.1.2)  
working on a lustre rhel4 kernel

	2.6.9-42.0.10.EL_lustre-1.4.10.1smp

The patch to fs/Makefile failed to apply, but was easily applied by  
hand.  There was also an issue with compat.h with the redefinition of  
atomic_inc_return which I found defined elsewhere in the kernel  
source tree.  The simple solution was

#if 0
static inline int atomic_inc_return(atomic_t *v)
{
   atomic_inc(v);
   return atomic_read(v);
}
#endif

So the kernel module now builds perfectly.  However, when I try to  
insert the module I get

linux-2.6.9-42.0.10.EL_lustre-1.4.10.1/fs/unionfs # insmod unionfs.ko
insmod: error inserting 'unionfs.ko': -1 Unknown symbol in module

and dmesg is showing

unionfs: Unknown symbol fsstack_copy_inode_size

Now, I am really confused.  fsstack_copy_inode_size is in fs/stack.c

void fsstack_copy_inode_size(struct inode *dst, const struct inode *src)
{
         i_size_write(dst, i_size_read((struct inode *)src));
         dst->i_blocks = src->i_blocks;
}
EXPORT_SYMBOL_GPL(fsstack_copy_inode_size);

and should be in the kernel???  I would have thought the compile  
would fail if it wasn't present?  Of course, the kernel I'm running  
(binary from a CFS supplied rpm) may not have this symbol...

Ideas?
Stu.


--
Stuart Midgley
Manager Production Services
DownUnder GeoSolutions
stuartm at dugeo.com





More information about the unionfs mailing list