]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
DEVEL15-linux-updates-20060811
authorDerrick Brashear <shadow@dementia.org>
Sun, 13 Aug 2006 05:53:27 +0000 (05:53 +0000)
committerDerrick Brashear <shadow@dementia.org>
Sun, 13 Aug 2006 05:53:27 +0000 (05:53 +0000)
fix for current fc kernels, and clean up linux nfs translator

(cherry picked from commit 7c76320e8b0bf49954f5b6f231305e36b7bc4edb)

acinclude.m4
src/afs/LINUX/osi_file.c
src/afs/LINUX/osi_machdep.h
src/afs/LINUX/osi_nfssrv.c
src/afs/LINUX/osi_pag_module.c
src/afs/LINUX/osi_vfsops.c
src/afs/afs_prototypes.h
src/cf/linux-test4.m4

index 7899d3f0a12fb7a68cf3dfb17d54e179a90ff4a2..75ede7bd4e1b9dfe8e8f1ea79af7867f9bf1662d 100644 (file)
@@ -584,6 +584,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
                 LINUX_FS_STRUCT_ADDRESS_SPACE_HAS_PAGE_LOCK
                 LINUX_FS_STRUCT_ADDRESS_SPACE_HAS_GFP_MASK
                 LINUX_FS_STRUCT_INODE_HAS_I_ALLOC_SEM
+                LINUX_FS_STRUCT_INODE_HAS_I_BLKSIZE
                 LINUX_FS_STRUCT_INODE_HAS_I_TRUNCATE_SEM
                 LINUX_FS_STRUCT_INODE_HAS_I_DIRTY_DATA_BUFFERS
                 LINUX_FS_STRUCT_INODE_HAS_I_DEVICES
index f096416b1b5d4db0a4652b90bc1f3ede28a3154e..ecf19340d3135ef2b3c0c11a632acd5f80b4fcb0 100644 (file)
@@ -138,7 +138,9 @@ afs_osi_Stat(register struct osi_file *afile, register struct osi_stat *astat)
     AFS_STATCNT(osi_Stat);
     MObtainWriteLock(&afs_xosi, 320);
     astat->size = OSIFILE_INODE(afile)->i_size;
+#ifdef STRUCT_INODE_HAS_I_BLKSIZE
     astat->blksize = OSIFILE_INODE(afile)->i_blksize;
+#endif
 #if defined(AFS_LINUX26_ENV)
     astat->mtime = OSIFILE_INODE(afile)->i_mtime.tv_sec;
     astat->atime = OSIFILE_INODE(afile)->i_atime.tv_sec;
index 3656bd4e5abe89d49493a4a233b79808bb152184..8faca60633e6bd689bd8eaabc0ad68ed0136cb3a 100644 (file)
@@ -26,6 +26,8 @@
 #define getpid() current->pid
 #ifdef STRUCT_TASK_STRUCT_HAS_REAL_PARENT
 #define getppid() current->real_parent->pid
+#elif defined(STRUCT_TASK_STRUCT_HAS_PARENT)
+#define getppid() current->parent->pid
 #else
 #define getppid() current->p_opptr->pid
 #endif
index 57be4bb74d34afb0b2bc3e0407d799c8948f46ae..9fec38a0f2701729cbf1fc35976fdd86f6c9e062 100644 (file)
@@ -26,7 +26,11 @@ RCSID
 #include <linux/sunrpc/svcauth.h>
 
 static unsigned long authtab_addr = 0;
+#if defined(module_param)
+module_param(authtab_addr, long, 0);
+#else
 MODULE_PARM(authtab_addr, "l");
+#endif
 MODULE_PARM_DESC(authtab_addr, "Address of the authtab array.");
 
 extern struct auth_ops *authtab[] __attribute__((weak));
index 7c057770b2800206a74ddfa7714807217e045d84..7b5d0154b649832cad3c6c683847a16e4c9677a6 100644 (file)
@@ -39,11 +39,19 @@ RCSID
 #endif
 
 static unsigned long nfs_server_addr = 0;
+#if defined(module_param)
+module_param(nfs_server_addr, long, 0);
+#else
 MODULE_PARM(nfs_server_addr,  "l");
+#endif
 MODULE_PARM_DESC(nfs_server_addr,  "IP Address of NFS Server");
 
 static char *this_cell = 0;
+#if defined(module_param_array) && LINUX_VERSION_CODE > KERNEL_VERSION(2,6,9)
+module_param(this_cell, charp, 0);
+#else
 MODULE_PARM(this_cell, "s");
+#endif
 MODULE_PARM_DESC(this_cell, "Local cell name");
 
 #if defined(AFS_LINUX24_ENV)
index 44ec210d5267a1f918bf96636520634989f90403..762c309ce3ecc0773bec8eeeff2481a89ed07185 100644 (file)
@@ -512,7 +512,9 @@ vattr2inode(struct inode *ip, struct vattr *vp)
     ip->i_ino = vp->va_nodeid;
     ip->i_nlink = vp->va_nlink;
     ip->i_blocks = vp->va_blocks;
+#ifdef STRUCT_INODE_HAS_I_BLKSIZE
     ip->i_blksize = vp->va_blocksize;
+#endif
     ip->i_rdev = vp->va_rdev;
     ip->i_mode = vp->va_mode;
     ip->i_uid = vp->va_uid;
index 2015eebe86bedc164ddb0f822b4c1f120d97e6d9..324e48dee0351425c85f12c8f2cce12c6bbc3603 100644 (file)
@@ -768,6 +768,8 @@ extern int osi_dnlc_purgevol(struct VenusFid *fidp);
 extern int osi_dnlc_init(void);
 extern int osi_dnlc_shutdown(void);
 
+/* afs_pag_cred.c */
+extern void afspag_SetPrimaryCell(char *acell);
 
 /* afs_stat.c */
 extern struct afs_CMStats afs_cmstats;
index 739189177f3f85e622affa7850e80083f9214fe2..92d435a70e960e165fdfa3060d7affb38ff616a5 100644 (file)
@@ -142,6 +142,17 @@ AC_DEFUN([LINUX_EXPORTS_SYS_WAIT4], [
   AC_MSG_RESULT($ac_cv_linux_exports_sys_wait4)])
 
 
+AC_DEFUN([LINUX_FS_STRUCT_INODE_HAS_I_BLKSIZE], [
+  AC_MSG_CHECKING([for i_blksize in struct inode])
+  AC_CACHE_VAL([ac_cv_linux_fs_struct_inode_has_i_blksize], [
+    AC_TRY_KBUILD(
+[#include <linux/fs.h>],
+[struct inode _inode;
+printk("%d\n", _inode.i_blksize);],
+      ac_cv_linux_fs_struct_inode_has_i_blksize=yes,
+      ac_cv_linux_fs_struct_inode_has_i_blksize=no)])
+  AC_MSG_RESULT($ac_cv_linux_fs_struct_inode_has_i_blksize)])
+
 AC_DEFUN([LINUX_FS_STRUCT_INODE_HAS_I_CDEV], [
   AC_MSG_CHECKING([for i_cdev in struct inode])
   AC_CACHE_VAL([ac_cv_linux_fs_struct_inode_has_i_cdev], [