I have been able to compile PVFS2 with no problems but I'm having trouble with the kernel module. I'm running Suse 10.1, linux kernel 2.6.16.21-0.25 on an Apple Xserve PPC 970 box.
A developer in my group made these changes but insmod complains about some missing kernel symbols. pvfs2-config.h:/* #define HAVE_GENERIC_GETXATTR 1 */ pvfs2-config.h:#define HAVE_PROC_HANDLER_SIX_ARG 1 src/kernel/linux-2.6/pvfs2-utils.c:LINE 6 #include "/usr/include/linux/xattr.h" src/kernel/linux-2.6/inode.c:LINE 183 int pvfs2_acl_chmod(struct inode *inode); // mgb I have tried the configure script from CVS and the one included. My configure line has the correct kernel source, /configure --with-kernel=/usr/src/linux-2.6.16.21-0.25 --without-openssl When I do a "#make kmod" I get the following errors, /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1007: error: XATTR_REPLACE¹ undeclared (first use in this function) /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1007: error: (Each undeclared identifier is reported only once /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1007: error: for each function it appears in.) /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c: In function pvfs2_create_file¹: /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1190: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1206: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1215: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c: In function pvfs2_create_dir¹: /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1277: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1293: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1302: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c: In function pvfs2_create_symlink¹: /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1372: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1388: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1398: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c: In function pvfs2_remove_entry¹: /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1469: warning: format %llu¹ expects type long long unsigned int¹, but argument 3 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1469: warning: format %llu¹ expects type long long unsigned int¹, but argument 4 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c: In function pvfs2_truncate_inode¹: /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1517: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1517: warning: format %llu¹ expects type long long unsigned int¹, but argument 3 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c: In function pvfs2_cancel_op_in_progress¹: /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1940: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type uint64_t¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c: In function pvfs2_make_bad_inode¹: /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:1998: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ /home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.c:2002: warning: format %llu¹ expects type long long unsigned int¹, but argument 2 has type PVFS_handle¹ make[3]: *** [/home/trip3/pvfs-2.6.0/src/kernel/linux-2.6/pvfs2-utils.o] Error 1 make[2]: *** [_module_/home/trip3/pvfs-2.6.0/src/kernel/linux-2.6] Error 2 make[1]: *** [default] Error 2 make: *** [just_kmod] Error 2 Here is the pvfs2-config.h, /* pvfs2-config.h. Generated from pvfs2-config.h.in by configure. */ /* pvfs2-config.h.in. Generated from configure.in by autoheader. */ /* Define if berkeley db error reporting was enabled */ /* #undef BERKDB_ERROR_REPORTING */ /* Define if kernel has aio support */ /* #undef HAVE_AIO */ /* Define if we are enabling VFS AIO support in kernel */ /* #undef HAVE_AIO_VFS_SUPPORT */ /* Define if read_descriptor_t has an arg member */ /* #undef HAVE_ARG_IN_READ_DESCRIPTOR_T */ /* Define to 1 if you have the <arpa/inet.h> header file. */ #define HAVE_ARPA_INET_H 1 /* Define to 1 if you have the <asm/ioctl32.h> header file. */ /* #undef HAVE_ASM_IOCTL32_H */ /* Define to 1 if you have the <attr/xattr.h> header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define if struct backing_dev_info in kernel has memory_backed */ /* #undef HAVE_BDI_MEMORY_BACKED */ /* Define if there exists a compat_ioctl member in file_operations */ /* #undef HAVE_COMPAT_IOCTL_HANDLER */ /* Define if third param (message) to DB error callback function is const */ #define HAVE_CONST_THIRD_PARAMETER_TO_DB_ERROR_CALLBACK 1 /* Define if DB error callback function takes dbenv parameter */ #define HAVE_DBENV_PARAMETER_TO_DB_ERROR_CALLBACK 1 /* Define if db library has DB_BUFFER_SMALL error */ #define HAVE_DB_BUFFER_SMALL 1 /* Define if db library has DB_DIRTY_READ flag */ #define HAVE_DB_DIRTY_READ 1 /* Define if statfs callback has struct dentry argument */ /* #undef HAVE_DENTRY_STATFS_SOP */ /* Define to 1 if you have the <execinfo.h> header file. */ #define HAVE_EXECINFO_H 1 /* Define to 1 if you have the `fgetxattr' function. */ #define HAVE_FGETXATTR 1 /* Define if fgetxattr takes position and option arguments */ /* #undef HAVE_FGETXATTR_EXTRA_ARGS */ /* Define if system provides fgtxattr prototype */ #define HAVE_FGETXATTR_PROTOTYPE 1 /* Define if struct inode_operations in kernel has fill_handle callback */ /* #undef HAVE_FILL_HANDLE_INODE_OPERATIONS */ /* Define if struct super_operations in kernel has find_inode_handle callback */ /* #undef HAVE_FIND_INODE_HANDLE_SUPER_OPERATIONS */ /* Define to 1 if you have the <fstab.h> header file. */ #define HAVE_FSTAB_H 1 /* Define if kernel has generic_file_readv */ #define HAVE_GENERIC_FILE_READV 1 /* Define if kernel has generic_getxattr */ #define HAVE_GENERIC_GETXATTR 1 /* Define if kernel has generic_permission */ #define HAVE_GENERIC_PERMISSION 1 /* Define if struct inode_operations in kernel has getattr_lite callback */ /* #undef HAVE_GETATTR_LITE_INODE_OPERATIONS */ /* Define if gethostbyaddr function exists */ #define HAVE_GETHOSTBYADDR 1 /* Define if gethostbyname function exists */ #define HAVE_GETHOSTBYNAME 1 /* Define to 1 if you have the `getmntent' function. */ #define HAVE_GETMNTENT 1 /* Define if struct super_operations in kernel has get_fs_key callback */ /* #undef HAVE_GET_FS_KEY_SUPER_OPERATIONS */ /* Define if strerror_r is GNU-specific */ /* #undef HAVE_GNU_STRERROR_R */ /* Define if libibverbs has reregister event */ /* #undef HAVE_IBV_EVENT_CLIENT_REREGISTER */ /* Define if libibverbs has ibv_get_devices */ /* #undef HAVE_IBV_GET_DEVICES */ /* Define if IB wrap_common.h exists. */ /* #undef HAVE_IB_WRAP_COMMON_H */ /* Define if kernel has iget4_locked */ #define HAVE_IGET4_LOCKED 1 /* Define if kernel has iget5_locked */ #define HAVE_IGET5_LOCKED 1 /* Define if kernel has iget_locked */ #define HAVE_IGET_LOCKED 1 /* Define to 1 if you have the <inttypes.h> header file. */ #define HAVE_INTTYPES_H 1 /* Define if sceond argument to releasepage in address_space_operations is type int */ /* #undef HAVE_INT_ARG2_ADDRESS_SPACE_OPERATIONS_RELEASEPAGE */ /* Define if return type of invalidatepage should be int */ /* #undef HAVE_INT_RETURN_ADDRESS_SPACE_OPERATIONS_INVALIDATEPAGE */ /* Define if return value from follow_link in inode_operations is type int */ /* #undef HAVE_INT_RETURN_INODE_OPERATIONS_FOLLOW_LINK */ /* Define if struct inode in kernel has i_blksize member */ /* #undef HAVE_I_BLKSIZE_IN_STRUCT_INODE */ /* Define if kernel has i_size_read */ #define HAVE_I_SIZE_READ 1 /* Define if kernel has i_size_write */ #define HAVE_I_SIZE_WRITE 1 /* Define to 1 if you have the `efence' library (-lefence). */ /* #undef HAVE_LIBEFENCE */ /* Define to 1 if you have the <linux/compat.h> header file. */ /* #undef HAVE_LINUX_COMPAT_H */ /* Define to 1 if you have the <linux/ioctl32.h> header file. */ #define HAVE_LINUX_IOCTL32_H 1 /* Define to 1 if you have the <linux/mount.h> header file. */ /* #undef HAVE_LINUX_MOUNT_H */ /* Define to 1 if you have the <linux/posix_acl.h> header file. */ /* #undef HAVE_LINUX_POSIX_ACL_H */ /* Define to 1 if you have the <linux/posix_acl_xattr.h> header file. */ /* #undef HAVE_LINUX_POSIX_ACL_XATTR_H */ /* Define to 1 if you have the <linux/syscalls.h> header file. */ /* #undef HAVE_LINUX_SYSCALLS_H */ /* Define to 1 if you have the <linux/xattr_acl.h> header file. */ /* #undef HAVE_LINUX_XATTR_ACL_H */ /* Define to 1 if you have the <malloc.h> header file. */ #define HAVE_MALLOC_H 1 /* Define to 1 if you have the <memory.h> header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the <mntent.h> header file. */ #define HAVE_MNTENT_H 1 /* Define to 1 if you have the <mntent.h,> header file. */ /* #undef HAVE_MNTENT_H_ */ /* Use the MPE profiling library */ /* #undef HAVE_MPE */ /* Define to 1 if you have the <netdb.h> header file. */ #define HAVE_NETDB_H 1 /* Define if including linux/config.h gives no warnings */ #define HAVE_NOWARNINGS_WHEN_INCLUDING_LINUX_CONFIG_H 1 /* Define to 1 if you have the <openssl/crypto.h> header file. */ /* #undef HAVE_OPENSSL_CRYPTO_H */ /* Define to 1 if you have the <openssl/evp.h> header file. */ /* #undef HAVE_OPENSSL_EVP_H */ /* Define if Pablo library is used */ /* #undef HAVE_PABLO */ /* Define if sysctl proc handlers have 6th argument */ /* #undef HAVE_PROC_HANDLER_SIX_ARG */ /* Define if struct file_operations in kernel has readdirplus_lite callback */ /* #undef HAVE_READDIRPLUSLITE_FILE_OPERATIONS */ /* Define if struct file_operations in kernel has readdirplus callback */ /* #undef HAVE_READDIRPLUS_FILE_OPERATIONS */ /* Define if struct file_operations in kernel has readx callback */ /* #undef HAVE_READX_FILE_OPERATIONS */ /* Define if kernel has register_ioctl32_conversion */ /* #undef HAVE_REGISTER_IOCTL32_CONVERSION */ /* Define to 1 if you have the <SDL/SDL_ttf.h> header file. */ /* #undef HAVE_SDL_SDL_TTF_H */ /* Define to 1 if you have the <SDL_ttf.h> header file. */ /* #undef HAVE_SDL_TTF_H */ /* Define if struct file_operations in kernel has sendfile callback */ /* #undef HAVE_SENDFILE_VFS_SUPPORT */ /* Define if kernel setxattr has const void* argument */ /* #undef HAVE_SETXATTR_CONST_ARG */ /* Define if struct super_operations in kernel has statfs_lite callback */ /* #undef HAVE_STATFS_LITE_SUPER_OPERATIONS */ /* Define to 1 if you have the <stdarg.h> header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the <stdint.h> header file. */ #define HAVE_STDINT_H 1 /* Define to 1 if you have the <stdlib.h> header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the <strings.h> header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the <string.h> header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strstr' function. */ #define HAVE_STRSTR 1 /* Define to 1 if you have the `strtoull' function. */ #define HAVE_STRTOULL 1 /* Define if struct xtvec is defined in the kernel */ /* #undef HAVE_STRUCT_XTVEC */ /* Define if sysinfo.h is present */ #define HAVE_SYSINFO 1 /* Define to 1 if you have the <sys/epoll.h> header file. */ #define HAVE_SYS_EPOLL_H 1 /* Define if sys/mount.h exists */ #define HAVE_SYS_MOUNT_H 1 /* Define to 1 if you have the <sys/socket.h> header file. */ #define HAVE_SYS_SOCKET_H 1 /* Define to 1 if you have the <sys/stat.h> header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the <sys/types.h> header file. */ #define HAVE_SYS_TYPES_H 1 /* Define if sys/vfs.h exists */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have the <sys/xattr.h> header file. */ #define HAVE_SYS_XATTR_H 1 /* Define if DB open function takes a txnid parameter */ #define HAVE_TXNID_PARAMETER_TO_DB_OPEN 1 /* Define if DB stat function takes txnid parameter */ #define HAVE_TXNID_PARAMETER_TO_DB_STAT 1 /* Define to 1 if you have the <unistd.h> header file. */ #define HAVE_UNISTD_H 1 /* Define if DB stat function takes malloc function ptr */ /* #undef HAVE_UNKNOWN_PARAMETER_TO_DB_STAT */ /* Define if get_sb callback has struct vfsmount argument */ /* #undef HAVE_VFSMOUNT_GETSB */ /* Define if struct file_operations in kernel has writex callback */ /* #undef HAVE_WRITEX_FILE_OPERATIONS */ /* Define if kernel has xattr support */ /* #undef HAVE_XATTR */ /* Define to the address where bug reports for this package should be sent. */ #define PACKAGE_BUGREPORT "" /* Define to the full name of this package. */ #define PACKAGE_NAME "" /* Define to the full name and version of this package. */ #define PACKAGE_STRING "" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "" /* Define to the version of this package. */ #define PACKAGE_VERSION "" /* major version number */ #define PVFS2_VERSION_MAJOR 2 /* minor version number */ #define PVFS2_VERSION_MINOR 6 /* sub version number */ #define PVFS2_VERSION_SUB 0 /* The size of `long int', as computed by sizeof. */ #define SIZEOF_LONG_INT 4 /* The size of `void *', as computed by sizeof. */ #define SIZEOF_VOID_P 4 /* Define to 1 if you have the ANSI C header files. */ #define STDC_HEADERS 1 /* Define if on darwin */ /* #undef TARGET_OS_DARWIN */ /* Define if on linux */ #define TARGET_OS_LINUX 1 /* Define if mtrace memory leak detection was enabled */ /* #undef WITH_MTRACE */ /* Define if openssl exists */ /* #undef WITH_OPENSSL */ /* Define to 1 if your processor stores words with the most significant byte first (like Motorola and SPARC, unlike Intel and VAX). */ #define WORDS_BIGENDIAN 1 I appreciate any help you can provide. - Trip _______________________________________________ Pvfs2-users mailing list [email protected] http://www.beowulf-underground.org/mailman/listinfo/pvfs2-users
