]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Merge in 1.2.4 changes
authorSam Hartman <hartmans@debian.org>
Sun, 12 May 2002 05:50:44 +0000 (05:50 +0000)
committerSam Hartman <hartmans@debian.org>
Sun, 12 May 2002 05:50:44 +0000 (05:50 +0000)
15 files changed:
src/afs/LINUX/osi_misc.c
src/afs/LINUX/osi_module.c
src/afs/LINUX/osi_vnodeops.c
src/afs/VNOPS/afs_vnop_lookup.c
src/afs/afs.h
src/afs/afs_call.c
src/afs/afs_daemons.c
src/afs/afs_pioctl.c
src/bozo/bosoprocs.c
src/libafs/MakefileProto.LINUX.in
src/ptserver/ptserver.c
src/venus/fstrace.c
src/viced/afsfileprocs.c
src/vol/partition.c
src/volser/volmain.c

index 28ff16fbccbfac5204029c33cba050afb69b7b76..6cc594110e9b1b67b4451036d7ce89095c341a83 100644 (file)
@@ -14,7 +14,7 @@
 #include <afsconfig.h>
 #include "../afs/param.h"
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/afs/LINUX/osi_misc.c,v 1.8 2002/01/28 00:53:20 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/afs/LINUX/osi_misc.c,v 1.9 2002/05/12 05:50:42 hartmans Exp $");
 
 #include "../afs/sysincludes.h"
 #include "../afs/afsincludes.h"
@@ -51,7 +51,8 @@ int osi_lookupname(char *aname, uio_seg_t seg, int followlink,
        if (nd.dentry->d_inode) {
            *dpp = dget(nd.dentry);
            code = 0;
-       }
+       } else
+           code = ENOENT;
        path_release(&nd);
     }
 #else
@@ -299,7 +300,7 @@ void osi_linux_free_inode_pages(void)
 
     for (i=0; i<VCSIZE; i++) {
        for(tvc = afs_vhashT[i]; tvc; tvc=tvc->hnext) {
-           ip = (struct inode*)tvc;
+           ip = AFSTOI(tvc);
 #if defined(AFS_LINUX24_ENV)
            if (ip->i_data.nrpages) {
 #else
@@ -328,7 +329,7 @@ void osi_linux_free_inode_pages(void)
 void osi_clear_inode(struct inode *ip)
 {
     cred_t *credp = crref();
-    struct vcache *vc = (struct vcache*)ip;
+    struct vcache *vc = ITOAFS(ip);
 
 #if defined(AFS_LINUX24_ENV)
     if (atomic_read(&ip->i_count) > 1)
@@ -404,8 +405,8 @@ void osi_iput(struct inode *ip)
 void check_bad_parent(struct dentry *dp)
 {
   cred_t *credp;
-  struct vcache *vcp = (struct vcache*)dp->d_inode, *avc = NULL;
-  struct vcache *pvc = (struct vcache *)dp->d_parent->d_inode;
+  struct vcache *vcp = ITOAFS(dp->d_inode), *avc = NULL;
+  struct vcache *pvc = ITOAFS(dp->d_parent->d_inode);
 
   if (vcp->mvid->Fid.Volume != pvc->fid.Fid.Volume) { /* bad parent */
     credp = crref();
index 1282877b4b874506aa1dc49851bd4b3187dacaf0..dc7f239f71373a2fb8fc6eb6f65e290ed3d4d56f 100644 (file)
@@ -14,7 +14,7 @@
 #include <afsconfig.h>
 #include "../afs/param.h"
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/afs/LINUX/osi_module.c,v 1.8 2001/10/14 18:43:26 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/afs/LINUX/osi_module.c,v 1.9 2002/05/12 05:50:42 hartmans Exp $");
 
 #include "../afs/sysincludes.h"
 #include "../afs/afsincludes.h"
@@ -89,57 +89,78 @@ __asm__ __volatile__ ("
 #endif
 
 #ifdef AFS_IA64_LINUX20_ENV
-unsigned char ia64_syscall_stub[] =
-{
-  0x00, 0x50, 0x45, 0x16, 0x80, 0x05,   //  [MII]  alloc r42=ar.pfs,8,3,6,0
-  0x90, 0x02, 0x00, 0x62, 0x00, 0x60,   //         mov r41=b0
-  0x05, 0x00, 0x01, 0x84,               //         mov r43=r32
-  0x00, 0x60, 0x01, 0x42, 0x00, 0x21,   //  [MII]  mov r44=r33
-  0xd0, 0x02, 0x88, 0x00, 0x42, 0xc0,   //         mov r45=r34
-  0x05, 0x18, 0x01, 0x84,               //         mov r46=r35
-  0x0d, 0x78, 0x01, 0x48, 0x00, 0x21,   //  [MFI]  mov r47=r36
-  0x00, 0x00, 0x00, 0x02, 0x00, 0x00,   //         nop.f 0x0
-  0x06, 0x08, 0x00, 0x84,               //         mov r48=gp;;
-  0x05, 0x00, 0x00, 0x00, 0x01, 0x00,   //  [MLX]  nop.m 0x0
-  0x00, 0x00, 0x00, 0x00, 0x00, 0xe0,   //         movl r15=0x0;;
-  0x01, 0x00, 0x00, 0x60,               //
-  0x0a, 0x80, 0x20, 0x1e, 0x18, 0x14,   //  [MMI]  ld8 r16=[r15],8;;
-  0x10, 0x00, 0x3c, 0x30, 0x20, 0xc0,   //         ld8 gp=[r15]
-  0x00, 0x09, 0x00, 0x07,               //         mov b6=r16
-  0x1d, 0x00, 0x00, 0x00, 0x01, 0x00,   //  [MFB]  nop.m 0x0
-  0x00, 0x00, 0x00, 0x02, 0x00, 0x00,   //         nop.f 0x0
-  0x68, 0x00, 0x00, 0x10,               //         br.call.sptk.many b0=b6;;
-  0x00, 0x00, 0x00, 0x00, 0x01, 0x00,   //  [MII]  nop.m 0x0
-  0x00, 0x50, 0x01, 0x55, 0x00, 0x00,   //         mov.i ar.pfs=r42
-  0x90, 0x0a, 0x00, 0x07,               //         mov b0=r41
-  0x1d, 0x08, 0x00, 0x60, 0x00, 0x21,   //  [MFB]  mov gp=r48
-  0x00, 0x00, 0x00, 0x02, 0x00, 0x80,   //         nop.f 0x0
-  0x08, 0x00, 0x84, 0x00                //         br.ret.sptk.many b0;;
-};
 
-void ia64_imm64_fixup(unsigned long v, void *code)
+asmlinkage long
+afs_syscall_stub(int r0, int r1, long r2, long r3, long r4, long gp)
 {
-        unsigned long *bundle = (unsigned long *) code;
-
-        unsigned long insn;
-        unsigned long slot1;
-
-        insn = ((v & 0x8000000000000000) >> 27) | ((v & 0x0000000000200000)) |
-           ((v & 0x00000000001f0000) <<  6) | ((v & 0x000000000000ff80) << 20) |
-           ((v & 0x000000000000007f) << 13);
-
-        slot1 = (v & 0x7fffffffffc00000) >> 22;
-
-        *bundle |= slot1 << 46;
-        *(bundle+1) |= insn << 23;
-        *(bundle+1) |= slot1 >> 18;
+__asm__ __volatile__ ("
+        alloc r42 = ar.pfs, 8, 3, 6, 0
+        mov r41 = b0                   /* save rp */
+        mov out0 = in0
+        mov out1 = in1
+        mov out2 = in2
+        mov out3 = in3
+        mov out4 = in4
+        mov out5 = gp                  /* save gp */
+        ;;
+.L1:    mov r3 = ip
+        ;;
+        addl r15=.fptr_afs_syscall-.L1,r3
+        ;;
+        ld8 r15=[r15]
+        ;;
+        ld8 r16=[r15],8
+        ;;
+        ld8 gp=[r15]
+        mov b6=r16
+        br.call.sptk.many b0 = b6
+        ;;
+        mov ar.pfs = r42
+        mov b0 = r41
+        mov gp = r48                   /* restore gp */
+        br.ret.sptk.many b0
+.fptr_afs_syscall:
+        data8 @fptr(afs_syscall)
+");
 }
 
-unsigned char *afs_syscall_stub, *afs_xsetgroups_stub;
+asmlinkage long
+afs_xsetgroups_stub(int r0, int r1, long r2, long r3, long r4, long gp)
+{
+__asm__ __volatile__ ("
+        alloc r42 = ar.pfs, 8, 3, 6, 0
+        mov r41 = b0                   /* save rp */
+        mov out0 = in0
+        mov out1 = in1
+        mov out2 = in2
+        mov out3 = in3
+        mov out4 = in4
+        mov out5 = gp                  /* save gp */
+        ;;
+.L2:    mov r3 = ip
+        ;;
+        addl r15=.fptr_afs_xsetgroups - .L2,r3
+        ;;
+        ld8 r15=[r15]
+        ;;
+        ld8 r16=[r15],8
+        ;;
+        ld8 gp=[r15]
+        mov b6=r16
+        br.call.sptk.many b0 = b6
+        ;;
+        mov ar.pfs = r42
+        mov b0 = r41
+        mov gp = r48                   /* restore gp */
+        br.ret.sptk.many b0
+.fptr_afs_xsetgroups:
+        data8 @fptr(afs_xsetgroups)
+");
+}
 
 struct fptr
 {
-       unsigned long ip;
+       void *ip;
        unsigned long gp;
 };
 
@@ -229,11 +250,7 @@ int init_module(void)
 
 #if defined(AFS_IA64_LINUX20_ENV)
     afs_ni_syscall = sys_call_table[__NR_afs_syscall - 1024];
-
-    afs_syscall_stub = (void *) kmalloc(sizeof(ia64_syscall_stub), GFP_KERNEL);
-    memcpy(afs_syscall_stub, ia64_syscall_stub, sizeof(ia64_syscall_stub));
-    ia64_imm64_fixup((unsigned long)afs_syscall, afs_syscall_stub+0x30);
-    sys_call_table[__NR_afs_syscall - 1024] = POINTER2SYSCALL afs_syscall_stub;
+    sys_call_table[__NR_afs_syscall - 1024] = POINTER2SYSCALL ((struct fptr *)afs_syscall_stub)->ip;
 #else /* AFS_IA64_LINUX20_ENV */
     afs_ni_syscall = sys_call_table[__NR_afs_syscall];
     sys_call_table[__NR_afs_syscall] = POINTER2SYSCALL afs_syscall;
@@ -250,15 +267,11 @@ int init_module(void)
 #if defined(AFS_IA64_LINUX20_ENV)
     sys_setgroupsp = (void *) &sys_setgroups;
 
-    afs_xsetgroups_stub = (void *) kmalloc(sizeof(ia64_syscall_stub), GFP_KERNEL);
-    memcpy(afs_xsetgroups_stub, ia64_syscall_stub, sizeof(ia64_syscall_stub));
-    ia64_imm64_fixup((unsigned long)afs_xsetgroups, afs_xsetgroups_stub+0x30);
-
     ((struct fptr *)sys_setgroupsp)->ip =
                SYSCALL2POINTER sys_call_table[__NR_setgroups - 1024];
     ((struct fptr *)sys_setgroupsp)->gp = kernel_gp;
 
-    sys_call_table[__NR_setgroups - 1024] = POINTER2SYSCALL afs_xsetgroups_stub;
+    sys_call_table[__NR_setgroups - 1024] = POINTER2SYSCALL ((struct fptr *)afs_xsetgroups_stub)->ip;
 #else /* AFS_IA64_LINUX20_ENV */
     sys_setgroupsp = SYSCALL2POINTER sys_call_table[__NR_setgroups];
     sys_call_table[__NR_setgroups] = POINTER2SYSCALL afs_xsetgroups;
@@ -276,6 +289,8 @@ int init_module(void)
 # endif
 #endif /* AFS_IA64_LINUX20_ENV */
 
+    osi_sysctl_init();
+
     return 0;
 }
 
@@ -287,6 +302,8 @@ void cleanup_module(void)
 {
     struct task_struct *t;
 
+    osi_sysctl_clean();
+
 #if defined(AFS_IA64_LINUX20_ENV)
     sys_call_table[__NR_setgroups - 1024] = POINTER2SYSCALL ((struct fptr *) sys_setgroupsp)->ip;
     sys_call_table[__NR_afs_syscall - 1024] = afs_ni_syscall;
index af787ca46ae54477800413d527623c8159c395da..4da2070ee83b77a418b6e28e0ff8f15b4ea7cd17 100644 (file)
 #include <afsconfig.h>
 #include "../afs/param.h"
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/afs/LINUX/osi_vnodeops.c,v 1.11 2002/01/22 20:29:44 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/afs/LINUX/osi_vnodeops.c,v 1.12 2002/05/12 05:50:42 hartmans Exp $");
 
 #include "../afs/sysincludes.h"
 #include "../afs/afsincludes.h"
 #include "../afs/afs_stats.h"
+#include "../afs/afs_osidnlc.h"
 #include "../h/mm.h"
 #include "../h/pagemap.h"
 #if defined(AFS_LINUX24_ENV)
@@ -60,7 +61,7 @@ static ssize_t afs_linux_read(struct file *fp, char *buf, size_t count,
                              loff_t *offp)
 {
     ssize_t code;
-    struct vcache *vcp = (struct vcache*)fp->f_dentry->d_inode;
+    struct vcache *vcp = ITOAFS(fp->f_dentry->d_inode);
     cred_t *credp = crref();
     struct vrequest treq;
 
@@ -104,7 +105,7 @@ static ssize_t afs_linux_write(struct file *fp, const char *buf, size_t count,
 {
     ssize_t code = 0;
     int code2;
-    struct vcache *vcp = (struct vcache *)fp->f_dentry->d_inode;
+    struct vcache *vcp = ITOAFS(fp->f_dentry->d_inode);
     struct vrequest treq;
     cred_t *credp = crref();
 
@@ -157,7 +158,7 @@ static int afs_linux_readdir(struct file *fp,
                             void *dirbuf, filldir_t filldir)
 {
     extern struct DirEntry * afs_dir_GetBlob();
-    struct vcache *avc = (struct vcache*)FILE_INODE(fp);
+    struct vcache *avc = ITOAFS(FILE_INODE(fp));
     struct vrequest treq;
     register struct dcache *tdc;
     int code;
@@ -314,7 +315,7 @@ void afs_linux_vma_close(struct vm_area_struct *vmap)
     if (!vmap->vm_file)
        return;
 
-    vcp = (struct vcache*)FILE_INODE(vmap->vm_file);
+    vcp = ITOAFS(FILE_INODE(vmap->vm_file));
     if (!vcp)
        return;
 
@@ -350,7 +351,7 @@ void afs_linux_vma_close(struct vm_area_struct *vmap)
 
 static int afs_linux_mmap(struct file *fp, struct vm_area_struct *vmap)
 {
-    struct vcache *vcp = (struct vcache*)FILE_INODE(fp);
+    struct vcache *vcp = ITOAFS(FILE_INODE(fp));
     cred_t *credp = crref();
     struct vrequest treq;
     int code;
@@ -451,7 +452,7 @@ static int afs_linux_release(struct inode *ip, struct file *fp)
 {
     int code = 0;
     cred_t *credp = crref();
-    struct vcache *vcp = (struct vcache*)ip;
+    struct vcache *vcp = ITOAFS(ip);
 
     AFS_GLOCK();
 #ifdef AFS_LINUX24_ENV
@@ -486,7 +487,7 @@ static int afs_linux_fsync(struct file *fp, struct dentry *dp)
 #ifdef AFS_LINUX24_ENV
     lock_kernel();
 #endif
-    code = afs_fsync((struct vcache*)ip, credp);
+    code = afs_fsync(ITOAFS(ip), credp);
 #ifdef AFS_LINUX24_ENV
     unlock_kernel();
 #endif
@@ -510,7 +511,7 @@ int afs_linux_file_revalidate(kdev_t dev);
 static int afs_linux_lock(struct file *fp, int cmd, struct file_lock *flp)
 {
     int code = 0;
-    struct vcache *vcp = (struct vcache*)FILE_INODE(fp);
+    struct vcache *vcp = ITOAFS(FILE_INODE(fp));
     cred_t *credp = crref();
 #ifdef AFS_LINUX24_ENV
     struct flock64 flock;
@@ -548,7 +549,7 @@ static int afs_linux_lock(struct file *fp, int cmd, struct file_lock *flp)
  */
 int afs_linux_flush(struct file *fp)
 {
-    struct vcache *vcp = (struct vcache *)FILE_INODE(fp);
+    struct vcache *vcp = ITOAFS(FILE_INODE(fp));
     int code = 0;
     cred_t *credp;
 
@@ -652,7 +653,7 @@ static int afs_linux_revalidate(struct dentry *dp)
     int code;
     cred_t *credp;
     struct vrequest treq;
-    struct vcache *vcp = (struct vcache*)dp->d_inode;
+    struct vcache *vcp = ITOAFS(dp->d_inode);
 
     AFS_GLOCK();
 #ifdef AFS_LINUX24_ENV
@@ -705,15 +706,24 @@ static int afs_linux_dentry_revalidate(struct dentry *dp)
     struct vcache *lookupvcp = NULL;
     int code, bad_dentry = 1;
     struct sysname_info sysState;
-    struct vcache *vcp = (struct vcache*) dp->d_inode;
-    struct vcache *parentvcp = (struct vcache*) dp->d_parent->d_inode;
+    struct vcache *vcp = ITOAFS(dp->d_inode);
+    struct vcache *parentvcp = ITOAFS(dp->d_parent->d_inode);
 
     AFS_GLOCK();
 
+    sysState.allocked = 0;
+
     /* If it's a negative dentry, then there's nothing to do. */
     if (!vcp || !parentvcp)
         goto done;
 
+    /* If it is the AFS root, then there's no chance it needs 
+       revalidating */
+    if (vcp == afs_globalVp) {
+       bad_dentry = 0;
+       goto done;
+    }
+
     if (code = afs_InitReq(&treq, credp))
         goto done;
 
@@ -770,7 +780,7 @@ static int afs_linux_dentry_revalidate(struct dentry *dp)
     int code;
     cred_t *credp;
     struct vrequest treq;
-    struct inode *ip = (struct inode *)dp->d_inode;
+    struct inode *ip = AFSTOI(dp->d_inode);
     
     unsigned long timeout = 3*HZ; /* 3 seconds */
     
@@ -844,7 +854,7 @@ int afs_linux_create(struct inode *dip, struct dentry *dp, int mode)
     vattr.va_mode = mode;
 
     AFS_GLOCK();
-    code = afs_create((struct vcache*)dip, name, &vattr, NONEXCL, mode,
+    code = afs_create(ITOAFS(dip), name, &vattr, NONEXCL, mode,
                      (struct vcache**)&ip, credp);
 
     if (!code) {
@@ -893,10 +903,10 @@ int afs_linux_lookup(struct inode *dip, struct dentry *dp)
     struct vcache *vcp=NULL;
     const char *comp = dp->d_name.name;
     AFS_GLOCK();
-    code = afs_lookup((struct vcache *)dip, comp, &vcp, credp);
+    code = afs_lookup(ITOAFS(dip), comp, &vcp, credp);
 
     if (vcp) {
-       struct inode *ip = (struct inode*)vcp;
+       struct inode *ip = AFSTOI(vcp);
        /* Reset ops if symlink or directory. */
 #if defined(AFS_LINUX24_ENV)
        if (S_ISREG(ip->i_mode)) {
@@ -918,10 +928,10 @@ int afs_linux_lookup(struct inode *dip, struct dentry *dp)
        else if (S_ISLNK(ip->i_mode))
            ip->i_op = &afs_symlink_iops;
 #endif
+    } 
     dp->d_time = jiffies;
     dp->d_op = afs_dops;
-    d_add(dp, (struct inode*)vcp);
-    } 
+    d_add(dp, AFSTOI(vcp));
 
     AFS_GUNLOCK();
     crfree(credp);
@@ -955,7 +965,7 @@ int afs_linux_link(struct dentry *olddp, struct inode *dip,
     d_drop(newdp);
 
     AFS_GLOCK();
-    code = afs_link((struct vcache*)oldip, (struct vcache*)dip, name, credp);
+    code = afs_link(ITOAFS(oldip), ITOAFS(dip), name, credp);
 
     AFS_GUNLOCK();
     crfree(credp);
@@ -970,7 +980,7 @@ int afs_linux_unlink(struct inode *dip, struct dentry *dp)
     int putback = 0;
 
     AFS_GLOCK();
-    code = afs_remove((struct vcache*)dip, name, credp);
+    code = afs_remove(ITOAFS(dip), name, credp);
     AFS_GUNLOCK();
     if (!code)
        d_drop(dp);
@@ -994,7 +1004,7 @@ int afs_linux_symlink(struct inode *dip, struct dentry *dp,
 
     AFS_GLOCK();
     VATTR_NULL(&vattr);
-    code = afs_symlink((struct vcache*)dip, name, &vattr, target, credp);
+    code = afs_symlink(ITOAFS(dip), name, &vattr, target, credp);
     AFS_GUNLOCK();
     crfree(credp);
     return -code;
@@ -1012,7 +1022,7 @@ int afs_linux_mkdir(struct inode *dip, struct dentry *dp, int mode)
     VATTR_NULL(&vattr);
     vattr.va_mask = ATTR_MODE;
     vattr.va_mode = mode;
-    code = afs_mkdir((struct vcache*)dip, name, &vattr, &tvcp, credp);
+    code = afs_mkdir(ITOAFS(dip), name, &vattr, &tvcp, credp);
 
     if (tvcp) {
        tvcp->v.v_op = &afs_dir_iops;
@@ -1021,7 +1031,7 @@ int afs_linux_mkdir(struct inode *dip, struct dentry *dp, int mode)
 #endif
        dp->d_op = afs_dops;
        dp->d_time = jiffies;
-       d_instantiate(dp, (struct inode*)tvcp);
+       d_instantiate(dp, AFSTOI(tvcp));
     }
 
     AFS_GUNLOCK();
@@ -1036,7 +1046,7 @@ int afs_linux_rmdir(struct inode *dip, struct dentry *dp)
     const char *name = dp->d_name.name;
 
     AFS_GLOCK();
-    code = afs_rmdir((struct vcache*)dip, name, credp);
+    code = afs_rmdir(ITOAFS(dip), name, credp);
 
     /* Linux likes to see ENOTEMPTY returned from an rmdir() syscall
      * that failed because a directory is not empty. So, we map
@@ -1077,7 +1087,7 @@ int afs_linux_rename(struct inode *oldip, struct dentry *olddp,
        d_drop(newdp);
     }
     AFS_GLOCK();
-    code = afs_rename((struct vcache*)oldip, oldname, (struct vcache*)newip,
+    code = afs_rename(ITOAFS(oldip), oldname, ITOAFS(newip),
                      newname, credp);
     AFS_GUNLOCK();
 
@@ -1105,7 +1115,7 @@ static int afs_linux_ireadlink(struct inode *ip, char *target, int maxlen,
     struct iovec iov;
 
     setup_uio(&tuio, &iov, target, 0, maxlen, UIO_READ, seg);
-    code = afs_readlink((struct vcache*)ip, &tuio, credp);
+    code = afs_readlink(ITOAFS(ip), &tuio, credp);
     crfree(credp);
 
     if (!code)
@@ -1207,7 +1217,7 @@ int afs_linux_readpage(struct file *fp, struct page *pp)
 
     setup_uio(&tuio, &iovec, (char*)address, offset, PAGESIZE,
              UIO_READ, AFS_UIOSYS);
-    code = afs_rdwr((struct vcache*)ip, &tuio, UIO_READ, 0, credp);
+    code = afs_rdwr(ITOAFS(ip), &tuio, UIO_READ, 0, credp);
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0)
     unlock_kernel();
 #endif
@@ -1302,7 +1312,7 @@ int afs_linux_permission(struct inode *ip, int mode)
     if (mode & MAY_EXEC) tmp |= VEXEC;
     if (mode & MAY_READ) tmp |= VREAD;
     if (mode & MAY_WRITE) tmp |= VWRITE;
-    code = afs_access((struct vcache*)ip, tmp, credp);
+    code = afs_access(ITOAFS(ip), tmp, credp);
 
     AFS_GUNLOCK();
     crfree(credp);
@@ -1320,7 +1330,7 @@ int afs_linux_writepage_sync(struct inode *ip, struct page *pp,
                         unsigned long offset,
                         unsigned int count)
 {
-    struct vcache *vcp = (struct vcache *) ip;
+    struct vcache *vcp = ITOAFS(ip);
     char *buffer;
     loff_t base;
     int code = 0;
@@ -1373,7 +1383,7 @@ int afs_linux_updatepage(struct file *fp, struct page *pp,
                         unsigned long offset,
                         unsigned int count, int sync)
 {
-    struct vcache *vcp = (struct vcache *)FILE_INODE(fp);
+    struct vcache *vcp = ITOAFS(FILE_INODE(fp));
     u8 *page_addr = (u8*) afs_linux_page_address(pp);
     int code = 0;
     cred_t *credp;
index 4aa7a109409a4f4e3e3e474646222bfbecae508d..09df8edfb9ec842fe34c5ec00e338e8ed014e2e7 100644 (file)
@@ -22,7 +22,7 @@
 #include <afsconfig.h>
 #include "../afs/param.h"
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/afs/VNOPS/afs_vnop_lookup.c,v 1.9 2001/10/14 18:43:27 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/afs/VNOPS/afs_vnop_lookup.c,v 1.10 2002/05/12 05:50:43 hartmans Exp $");
 
 #include "../afs/sysincludes.h"        /* Standard vendor system headers */
 #include "../afs/afsincludes.h"        /* Afs-based standard headers */
@@ -924,7 +924,7 @@ afs_lookup(adp, aname, avcp, acred)
 
     AFS_STATCNT(afs_lookup);
 #ifdef AFS_OSF_ENV
-    ndp->ni_dvp = (struct vnode *)adp;
+    ndp->ni_dvp = AFSTOV(adp);
     memcpy(aname, ndp->ni_ptr, ndp->ni_namelen);
     aname[ndp->ni_namelen] = '\0';
 #endif /* AFS_OSF_ENV */
@@ -956,7 +956,7 @@ afs_lookup(adp, aname, avcp, acred)
 #ifdef AFS_OSF_ENV
            extern struct vcache *afs_globalVp;
            if (adp == afs_globalVp) {
-               struct vnode *rvp = (struct vnode *)adp;
+               struct vnode *rvp = AFSTOV(adp);
 /*
                ndp->ni_vp = rvp->v_vfsp->vfs_vnodecovered;
                ndp->ni_dvp = ndp->ni_vp;
@@ -999,7 +999,7 @@ afs_lookup(adp, aname, avcp, acred)
 
     /* Check for read access as well.  We need read access in order to
        stat files, but not to stat subdirectories. */
-    if (!afs_AccessOK(adp, PRSFS_READ, &treq, CHECK_MODE_BITS))
+    if (!afs_AccessOK(adp, PRSFS_LOOKUP, &treq, CHECK_MODE_BITS))
        no_read_access = 1;
 
     /* special case lookup of ".".  Can we check for it sooner in this code,
index 9dc152fadfafe93170daeaa1682a9d7a738d8249..0f03fcda6cd221a30f04ba6da3673f2e105ea89c 100644 (file)
@@ -564,6 +564,13 @@ struct     vtodc
 extern afs_uint32 afs_stampValue;              /* stamp for pair's usage */
 #define        MakeStamp()     (++afs_stampValue)
 
+#define VTOAFS(V) ((struct vcache*)(V))
+#define AFSTOV(V) (&(V)->v)
+#ifdef AFS_LINUX22_ENV
+#define ITOAFS(V) ((struct vcache*)(V))
+#define AFSTOI(V) (struct inode *)(&(V)->v)
+#endif
+
 /* INVARIANTs: (vlruq.next != NULL) == (vlruq.prev != NULL)
  *             nextfree => !vlruq.next && ! vlruq.prev
  * !(avc->nextfree) && !avc->vlruq.next => (FreeVCList == avc->nextfree)
@@ -696,9 +703,9 @@ struct vcache {
 #ifdef AFS_SGI64_ENV
 #include <ksys/behavior.h>
 #define AFS_RWLOCK(V,F) \
-       afs_rwlock(&(((struct vcache *)(V))->vc_bhv_desc), (F));
+       afs_rwlock(&VTOAFS(V)->vc_bhv_desc, (F));
 #define AFS_RWUNLOCK(V,F) \
-       afs_rwunlock(&(((struct vcache *)(V))->vc_bhv_desc), (F));
+       afs_rwunlock(&VTOAFS(V)->vc_bhv_desc, (F));
 
 #else
 #define AFS_RWLOCK(V,F) afs_rwlock((vnode_t *)(V), (F) )
@@ -914,7 +921,7 @@ struct dcache {
        avc->states |= CCore;   /* causes close to be called later */ \
                                                                       \
        /* The cred and vnode holds will be released in afs_FlushActiveVcaches */  \
-       VN_HOLD((struct vnode *)avc);   /* So it won't disappear */           \
+       VN_HOLD(AFSTOV(avc));   /* So it won't disappear */           \
        CRKEEP(avc, acred); /* Should use a better place for the creds */ \
     }                                                                         \
     else {                                                                    \
index 54e80dc59d2a8788537ab91e12bc326bf284d9b5..b9fea5a8ff6d831196ea178e3b74021ebc6b8747 100644 (file)
@@ -10,7 +10,7 @@
 #include <afsconfig.h>
 #include "../afs/param.h"
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/afs/afs_call.c,v 1.10 2002/01/28 00:53:19 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/afs/afs_call.c,v 1.11 2002/05/12 05:50:41 hartmans Exp $");
 
 #include "../afs/sysincludes.h"        /* Standard vendor system headers */
 #include "../afs/afsincludes.h"        /* Afs-based standard headers */
@@ -980,6 +980,9 @@ asmlinkage int afs_syscall(long syscall, long parm1, long parm2, long parm3,
     long linux_ret=0;
     long *retval = &linux_ret;
     long eparm[4]; /* matches AFSCALL_ICL in fstrace.c */
+#ifdef AFS_SPARC64_LINUX24_ENV
+    afs_int32 eparm32[4];
+#endif
     /* eparm is also used by AFSCALL_CALL in afsd.c */
 #else
 #if defined(UKERNEL)
@@ -1042,6 +1045,25 @@ Afs_syscall ()
     uap->parm2 = parm2;
     uap->parm3 = parm3;
     if (syscall == AFSCALL_ICL || syscall == AFSCALL_CALL) {
+#ifdef AFS_SPARC64_LINUX24_ENV
+/* from arch/sparc64/kernel/sys_sparc32.c */
+#define AA(__x)                                \
+({     unsigned long __ret;            \
+       __asm__ ("srl   %0, 0, %0"      \
+                : "=r" (__ret)         \
+                : "0" (__x));          \
+       __ret;                          \
+})
+
+
+       if (current->thread.flags & SPARC_FLAG_32BIT) {
+       AFS_COPYIN((char*)parm4, (char*)eparm32, sizeof(eparm32), code);
+       eparm[0]=AA(eparm32[0]);
+       eparm[1]=AA(eparm32[1]);
+       eparm[2]=AA(eparm32[2]);
+#undef AA
+} else
+#endif
        AFS_COPYIN((char*)parm4, (char*)eparm, sizeof(eparm), code);
        uap->parm4 = eparm[0];
        uap->parm5 = eparm[1];
@@ -1072,17 +1094,12 @@ Afs_syscall ()
 #endif
     } else if (uap->syscall == AFSCALL_SETPAG) {
 #ifdef AFS_SUN5_ENV
-       struct cred *cred;
        register proc_t *procp;
 
        procp = ttoproc(curthread);
-       mutex_enter(&procp->p_crlock);
-       cred = procp->p_cred; 
        AFS_GLOCK();
-       code =  afs_setpag(&cred);
+       code =  afs_setpag(&procp->p_cred);
        AFS_GUNLOCK();
-       procp->p_cred = cred;
-       mutex_exit(&procp->p_crlock);
 #else
        AFS_GLOCK();
 #if    defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV)
index abd2307efb1f7d9147a5799277dd1c1afbe69dd3..a73e1e8293e7b8689861ebdc2f3c0f6e36de30a2 100644 (file)
@@ -10,7 +10,7 @@
 #include <afsconfig.h>
 #include "../afs/param.h"
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/afs/afs_daemons.c,v 1.6 2001/10/14 18:43:25 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/afs/afs_daemons.c,v 1.7 2002/05/12 05:50:42 hartmans Exp $");
 
 #include "../afs/sysincludes.h"        /* Standard vendor system headers */
 #include "../afs/afsincludes.h"        /* Afs-based standard headers */
@@ -338,7 +338,7 @@ afs_CheckRootVolume () {
            mp = (struct mount *) afs_globalVFS->vfs_data ;
            mp->m_rootgp = gget(mp, 0, 0, (char *)rootgp);
            afs_unlock(mp->m_rootgp);   /* unlock basic gnode */
-           afs_vrele((struct vcache *) rootgp);  /* zap afs_root's vnode hold */
+           afs_vrele(VTOAFS(rootgp));  /* zap afs_root's vnode hold */
        }
     }
 #endif
@@ -389,9 +389,9 @@ void BPath(ab)
        return;
     }
 #ifdef AFS_DEC_ENV
-    tvc = (struct vcache *) afs_gntovn(tvn);
+    tvc = VTOAFS(afs_gntovn(tvn));
 #else
-    tvc = (struct vcache *) tvn;
+    tvc = VTOAFS(tvn);
 #endif
     /* here we know its an afs vnode, so we can get the data for the chunk */
     tdc = afs_GetDCache(tvc, ab->parm[1], &treq, &offset, &len, 1);
@@ -540,7 +540,7 @@ struct brequest *afs_BQueue(aopcode, avc, dontwait, ause, acred, aparm0, aparm1,
 #ifdef AFS_DEC_ENV
                avc->vrefCount++;
 #else
-               VN_HOLD((struct vnode *)avc);
+               VN_HOLD(AFSTOV(avc));
 #endif
            }
            tb->refCount = ause+1;
@@ -778,7 +778,7 @@ afs_BioDaemon (nbiods)
            AFS_GLOCK();
            continue;
        }
-       vcp = (struct vcache *)bp->b_vp;
+       vcp = VTOAFS(bp->b_vp);
        if (bp->b_flags & B_PFSTORE) {  /* XXXX */
            ObtainWriteLock(&vcp->lock,404);        
            if (vcp->v.v_gnode->gn_mwrcnt) {
@@ -1131,7 +1131,7 @@ afs_BioDaemon (nbiods)
            splx(s);
            continue;
        }
-       vcp = (struct vcache *)bp->b_vp;
+       vcp = VTOAFS(bp->b_vp);
        if (bp->b_flags & B_PFSTORE) {
            ObtainWriteLock(&vcp->lock,210);        
            if (vcp->v.v_gnode->gn_mwrcnt) {
index 769b4a9111fb283f0d5eb6ed136234623a2e062b..bcb386192966b2291c30936b8a1a3677a48f4e43 100644 (file)
@@ -10,7 +10,7 @@
 #include <afsconfig.h>
 #include "../afs/param.h"
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/afs/afs_pioctl.c,v 1.11 2002/01/22 20:29:43 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/afs/afs_pioctl.c,v 1.12 2002/05/12 05:50:42 hartmans Exp $");
 
 #include "../afs/sysincludes.h"        /* Standard vendor system headers */
 #include "../afs/afsincludes.h"        /* Afs-based standard headers */
@@ -484,7 +484,7 @@ afs_xioctl ()
       
       /* first determine whether this is any sort of vnode */
 #ifdef AFS_LINUX22_ENV
-      tvc = (struct vcache *)ip;
+      tvc = VTOAFS(ip);
       {
 #else
 #ifdef AFS_SUN5_ENV
@@ -494,14 +494,14 @@ afs_xioctl ()
 #endif
        /* good, this is a vnode; next see if it is an AFS vnode */
 #if    defined(AFS_AIX32_ENV) || defined(AFS_SUN5_ENV)
-       tvc = (struct vcache *) fd->f_vnode;    /* valid, given a vnode */
+       tvc = VTOAFS(fd->f_vnode);      /* valid, given a vnode */
 #else
-       tvc = (struct vcache *) fd->f_data;     /* valid, given a vnode */
+       tvc = VTOAFS((struct vnode*)fd->f_data);        /* valid, given a vnode */
 #endif
 #endif /* AFS_LINUX22_ENV */
-       if (tvc && IsAfsVnode((struct vnode *)tvc)) {
+       if (tvc && IsAfsVnode(AFSTOV(tvc))) {
 #ifdef AFS_DEC_ENV
-         tvc = (struct vcache *) afs_gntovn((struct gnode *) tvc);
+         tvc = VTOAFS(afs_gntovn((struct gnode *) tvc));
          if (!tvc) {   /* shouldn't happen with held gnodes */
            u.u_error = ENOENT;
            return;
@@ -2665,7 +2665,7 @@ struct AFS_UCRED *acred;
        for(tvc = afs_vhashT[i]; tvc; tvc=tvc->hnext) {
            if (tvc->fid.Fid.Volume == volume && tvc->fid.Cell == cell) {
 #if    defined(AFS_SGI_ENV) || defined(AFS_ALPHA_ENV)  || defined(AFS_SUN5_ENV)  || defined(AFS_HPUX_ENV) || defined(AFS_LINUX20_ENV)
-               VN_HOLD((struct vnode *)tvc);
+               VN_HOLD(AFSTOV(tvc));
 #else
 #if defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV)
                osi_vnhold(tvc, 0);
index 6fb4e7dfcdb8fdd59ae03f0765015dc439ba9e62..3dfd8c9f4be8ede32034f1c9f1654e45a69d7be6 100644 (file)
@@ -10,7 +10,7 @@
 #include <afsconfig.h>
 #include <afs/param.h>
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/bozo/bosoprocs.c,v 1.4 2002/01/22 20:29:44 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/bozo/bosoprocs.c,v 1.5 2002/05/12 05:50:43 hartmans Exp $");
 
 #include <afs/stds.h>
 #include <sys/types.h>
@@ -1179,7 +1179,7 @@ char **ainstance; {
 
 struct bozo_bosEntryStats bozo_bosEntryStats[] = {
     {NULL, 1,1, 0755, 02}, /* AFSDIR_SERVER_AFS_DIRPATH    */
-    {NULL, 1,1, 0700, 02}, /* AFSDIR_SERVER_ETC_DIRPATH    */
+    {NULL, 1,1, 0755, 02}, /* AFSDIR_SERVER_ETC_DIRPATH    */
     {NULL, 1,1, 0755, 02}, /* AFSDIR_SERVER_BIN_DIRPATH    */
     {NULL, 1,1, 0755, 02}, /* AFSDIR_SERVER_LOGS_DIRPATH   */
     {NULL, 1,0, 0700, 07}, /* AFSDIR_SERVER_BACKUP_DIRPATH */
index 1ecd276b46901aad8fc54e22479e1b79c43188d5..dbd78c97817d5c5d7e920047e88b1f045ffa4b3b 100644 (file)
@@ -24,6 +24,8 @@ afssrvsbindir=@afssrvsbindir@
 afssrvlibexecdir=@afssrvlibexecdir@
 afskerneldir=@afskerneldir@
 SYS_NAME=@AFS_SYSNAME@
+KDEBUG=@KERN_DEBUG_OPT@
+FOMIT=@OMIT_FRAME_POINTER@
 
 include config/Makefile.${SYS_NAME}
 
@@ -37,6 +39,7 @@ AFS_OS_OBJS = \
        osi_misc.o \
        osi_module.o \
        osi_sleep.o \
+       osi_sysctl.o \
        osi_vfsops.o \
        osi_vm.o \
        osi_vnodeops.o \
@@ -54,40 +57,41 @@ CC = gcc
 LD = ld
 # -Wall
 <i386_linux22 i386_linux24>
-CCFLAGS =   -O2 -fomit-frame-pointer \
+CCFLAGS =  $(KDEBUG) -O2 $(FOMIT) \
        -fno-strength-reduce -pipe -march=i486 -malign-loops=2 -malign-jumps=2 \
        -malign-functions=2
 DEFINES = -D__KERNEL__  -DCPU=586 -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF} ${KDEFINES}
 <alpha_linux_22 alpha_linux_24>
-CCFLAGS = -O2 -fomit-frame-pointer -fno-strength-reduce -pipe -mno-fp-regs -ffixed-8
+CCFLAGS = $(KDEBUG) -O2 $(FOMIT) -fno-strength-reduce -pipe -mno-fp-regs -ffixed-8
 DEFINES = -D__KERNEL__ -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF}
 <s390_linux22 s390_linux24>
-CCFLAGS =   -O -fomit-frame-pointer -fno-strength-reduce \
+CCFLAGS =   -O $(FOMIT) -fno-strength-reduce \
        -fno-strict-aliasing -fsigned-char 
 DEFINES = -D__KERNEL__  -D__s390__ -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF}
 <sparc_linux22 sparc_linux24>
 LD = ld -m elf32_sparc
-CCFLAGS =   -O2 -fomit-frame-pointer \
+CCFLAGS =   $(KDEBUG) -O2 $(FOMIT) \
        -fno-strength-reduce -pipe -mcpu=v8 -mno-fpu -fcall-used-g5 -fcall-used-g7
 DEFINES = -D__KERNEL__  -DCPU=sparc -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF}
 <sparc64_linux22 sparc64_linux24>
 CC = sparc64-linux-gcc
 LD = ld -m elf64_sparc
-CCFLAGS =   -O2 -fomit-frame-pointer \
+CCFLAGS =   $(KDEBUG) -O2 $(FOMIT) \
        -fno-strength-reduce -pipe -mcpu=ultrasparc -m64 -mno-fpu -mcmodel=medlow -ffixed-g4 -fcall-used-g5 -fcall-used-g7 -Wno-sign-compare
 DEFINES = -D__KERNEL__  -DCPU=sparc64 -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF}
 <ppc_linux22 ppc_linux24>
-CCFLAGS =   -O2 -fomit-frame-pointer -fno-strength-reduce \
+CCFLAGS =   $(KDEBUG) -O2 $(FOMIT) -fno-strength-reduce \
        -fno-strict-aliasing -fsigned-char -msoft-float -pipe \
        -fno-builtin -ffixed-r2
 DEFINES = -D__KERNEL__  -D__powerpc__ -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF}
 <parisc_linux24>
-CCFLAGS =   -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -fno-strength-reduce \
+CCFLAGS =   $(KDEBUG) -O2 $(FOMIT) \
+       -fno-strict-aliasing -fno-common -fno-strength-reduce \
         -fno-strict-aliasing -fsigned-char -mno-space-regs -mfast-indirect-calls \
         -mdisable-fpregs -ffunction-sections -march=1.1 -mschedule=7100
 DEFINES = -D__KERNEL__  -D__linux__ -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF}
 <ia64_linux24>
-CCFLAGS =   -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe \
+CCFLAGS =   $(KDEBUG) -O2 $(FOMIT) -fno-strict-aliasing -fno-common -pipe \
        -ffixed-r13 -mfixed-range=f10-f15,f32-f127 -falign-functions=32 -mb-step
 DEFINES = -D__KERNEL__ -DKERNEL -D_KERNEL ${SMP_DEF} -DMODULE
 <all>
@@ -271,6 +275,8 @@ osi_module.o: $(AFS)/osi_module.c
        $(CRULE1)
 osi_sleep.o: $(AFS)/osi_sleep.c
        $(CRULE1)
+osi_sysctl.o: $(AFS)/osi_sysctl.c
+       $(CRULE1)
 osi_vfsops.o: $(AFS)/osi_vfsops.c
        $(CRULE1)
 osi_vm.o: $(AFS)/osi_vm.c
index 5985db9e9c024c542cecb694a3227cddbd6ee03f..938a9d9dab1723c19656a2480a51ca8245f10954 100644 (file)
@@ -10,7 +10,7 @@
 #include <afsconfig.h>
 #include <afs/param.h>
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/ptserver/ptserver.c,v 1.7 2001/10/14 18:43:29 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/ptserver/ptserver.c,v 1.8 2002/05/12 05:50:43 hartmans Exp $");
 
 #include <afs/stds.h>
 #ifdef AFS_AIX32_ENV
@@ -268,9 +268,8 @@ void main (argc, argv)
     }
     else sc[2] = sc[0];
 
-    /* These two lines disallow jumbograms */
-    rx_maxReceiveSize = OLD_MAX_PACKET_SIZE;
-    rxi_nSendFrags = rxi_nRecvFrags = 1;
+    /* Disable jumbograms */
+    rx_SetNoJumbo();
 
     tservice = rx_NewService(0,PRSRV,"Protection Server",sc,3,PR_ExecuteRequest);
     if (tservice == (struct rx_service *)0) {
index 15fa11b034dd2f27fa9fe1fcbff8f4a4745e3c48..1c54b9a6c1eee7ad16dd3c1d8aecfcae1fe1d921 100644 (file)
@@ -13,7 +13,7 @@
 #include <afsconfig.h>
 #include <afs/param.h>
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/venus/fstrace.c,v 1.6 2001/09/11 15:48:53 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/venus/fstrace.c,v 1.7 2002/05/12 05:50:43 hartmans Exp $");
 
 #include <stdio.h>
 #include <sys/types.h>
@@ -1594,6 +1594,11 @@ tryagain:
     {
        if (!failed) {
            failed = 1;
+#if defined(AFS_OSF_ENV) && !defined(AFS_OSF20_ENV)
+           catclose1 (catd);
+#else
+           catclose (catd);
+#endif
            goto tryagain;
        }
         sprintf ((char *) error_text, "status %08x (%s / %s)", 
index dba0e63753125286ba769b409d44d7ef26449888..77d82b03dc42dfb1ecab231185320fce20ac1636 100644 (file)
@@ -28,7 +28,7 @@
 #include <afsconfig.h>
 #include <afs/param.h>
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/viced/afsfileprocs.c,v 1.7 2002/01/22 20:29:45 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/viced/afsfileprocs.c,v 1.8 2002/05/12 05:50:44 hartmans Exp $");
 
 #include <stdio.h>
 #include <stdlib.h>
@@ -2293,7 +2293,7 @@ SAFSS_Rename (tcon, OldDirFid, OldName, NewDirFid, NewName, OutOldDirStatus,
                                 V_parentId(volptr));
                IH_RELEASE(newfileptr->handle);
                if (errorCode == -1) {
-                   ViceLog(0, ("Del: inode=%d, name=%s, errno=%d\n",
+                   ViceLog(0, ("Del: inode=%s, name=%s, errno=%d\n",
                                PrintInode(NULL, VN_GET_INO(newfileptr)),
                                NewName, errno));
                    if ((errno != ENOENT) && (errno != EIO) && (errno != ENXIO))
index e25678b399d6f87735967132f1e4adb76684cd9a..f4c396970e36dcc2127cba75423cb4f826721c92 100644 (file)
@@ -18,7 +18,7 @@
 #include <afsconfig.h>
 #include <afs/param.h>
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/vol/partition.c,v 1.9 2001/10/14 18:43:31 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/vol/partition.c,v 1.10 2002/05/12 05:50:44 hartmans Exp $");
 
 #include <ctype.h>
 #ifdef AFS_NT40_ENV
@@ -303,7 +303,7 @@ int VCheckPartition(part, devname)
        return -1;
 #endif
 
-#ifdef AFS_DUX40_ENV
+#if defined(AFS_DUX40_ENV) && !defined(AFS_NAMEI_ENV)
     if (status.st_ino != ROOTINO) {
        Log("%s is not a mounted file system; ignored.\n", part);
        return 0;
index e73e2d4074444f2c9d9e1a420adf2c46c6895a1b..60f965285cf7585e25188d2b0a5a31b602cb21fe 100644 (file)
@@ -10,7 +10,7 @@
 #include <afsconfig.h>
 #include <afs/param.h>
 
-RCSID("$Header: /tmp/cvstemp/openafs/src/volser/volmain.c,v 1.7 2001/09/11 15:48:58 hartmans Exp $");
+RCSID("$Header: /tmp/cvstemp/openafs/src/volser/volmain.c,v 1.8 2002/05/12 05:50:44 hartmans Exp $");
 
 #include <sys/types.h>
 #ifdef AFS_NT40_ENV
@@ -337,8 +337,7 @@ usage:
     }
     if (!rxJumbograms) {
        /* Don't allow 3.4 vos clients to send jumbograms and we don't send. */
-       rx_maxReceiveSize = OLD_MAX_PACKET_SIZE;
-       rxi_nSendFrags = rxi_nRecvFrags = 1;
+        rx_SetNoJumbo();
     }
     rx_GetIFInfo();
     rx_SetRxDeadTime(420);