Btw, the kernel module in the tree works correctly with Fedora 9's latest Kernel.
Cheers, brad On Mon, Dec 15, 2008 at 2:33 PM, Kyle Schochenmaier <[email protected]>wrote: > I noticed this also this morning, pcarns mentioned to me that you can > back out the following patch to get it to build if that is necessary. > > http://www.pvfs.org/fisheye/rdiff/PVFS?csid=MAIN:slang:20081212171229&u&N > > ~Kyle > > Kyle Schochenmaier > > > > On Mon, Dec 15, 2008 at 1:31 PM, Bradley Settlemyer > <[email protected]> wrote: > > Hello, > > > > I am having trouble building the tree due to the layout types (newer > stuff > > I'm not familiar with) -- probably due to the recent compiler I am using, > > though I don't think you wanted what you had anyway. I am seeing the > > following errors: > > > > CC src/apps/admin/pvfs2-touch.o > > src/apps/admin/pvfs2-touch.c: In function 'main': > > src/apps/admin/pvfs2-touch.c:48: error: incompatible types in assignment > > src/apps/admin/pvfs2-touch.c:77: error: incompatible types in assignment > > make: *** [src/apps/admin/pvfs2-touch.o] Error 1 > > > > > > Which boils down to this line in pvfs2-touch: > > > > layout.algorithm = PVFS_SYS_LAYOUT_DEFAULT; > > > > The accompanying enum is this: > > > > /* Layout algorithm for converting from server lists in the config > > * to a list of servers to use to store datafiles for a file. > > */ > > enum PVFS_sys_layout_algorithm > > { > > /* order the datafiles according to the server list */ > > PVFS_SYS_LAYOUT_NONE = 1, > > > > /* choose the first datafile randomly, and then round-robin in-order > */ > > PVFS_SYS_LAYOUT_ROUND_ROBIN = 2, > > > > /* choose each datafile randomly */ > > PVFS_SYS_LAYOUT_RANDOM = 3, > > > > /* order the datafiles based on the list specified */ > > PVFS_SYS_LAYOUT_LIST = 4 > > }; > > #define PVFS_SYS_LAYOUT_DEFAULT NULL > > > > (So obviously, default points to an invalid enum value -- namely 0). > > > > My guess is you wanted something more like this: > > > > enum PVFS_sys_layout_algorithm > > { > > /* First enum value is the invalid case */ > > PVFS_SYS_LAYOUT_INVALID = 0; > > > > PVFS_SYS_LAYOUT_NONE = 1, > > > > /* choose the first datafile randomly, and then round-robin in-order > */ > > PVFS_SYS_LAYOUT_ROUND_ROBIN = 2, > > > > /* choose each datafile randomly */ > > PVFS_SYS_LAYOUT_RANDOM = 3, > > > > /* order the datafiles based on the list specified */ > > PVFS_SYS_LAYOUT_LIST = 4 > > }; > > > > #define PVFS_SYS_LAYOUT_DEFAULT PVFS_SYS_LAYOUT_NONE > > > > Then you have the assert that the layout is not 0, and you have a safe > > initialization value if you need to set the enum type to some default > > initial value for an outbound parameter that won't pass the assert if it > > isn't set (due to an error) or if someone just memsets the thing by > > accident. > > > > I changed the call in pvfs2-touch.c to simply use PVFS_SYS_LAYOUT_NONE in > my > > tree. > > > > Cheers, > > Brad > > > > _______________________________________________ > > Pvfs2-developers mailing list > > [email protected] > > http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers > > > > >
_______________________________________________ Pvfs2-developers mailing list [email protected] http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers
