9c4d535c32ab94a708f1e41e7ccd7da7e1626eff
[openafs.git] / src / packaging / Debian / patches / alloc-vnode
1 Allocate vnodes rather than using the stack, which fixes file server
2 problems on SPARC.  Upstream delta:
3
4 STABLE14-volprocs-alloc-vnode-instead-of-using-stack-20071126
5
6 Debian Bug#448380
7
8 --- openafs.orig/src/volser/volprocs.c
9 +++ openafs/src/volser/volprocs.c
10 @@ -210,14 +210,14 @@
11      struct acl_accessList *ACL;
12      ViceFid did;
13      Inode inodeNumber, nearInode;
14 -    char buf[SIZEOF_LARGEDISKVNODE];
15 -    struct VnodeDiskObject *vnode = (struct VnodeDiskObject *)buf;
16 +    struct VnodeDiskObject *vnode;
17      struct VnodeClassInfo *vcp = &VnodeClassInfo[vLarge];
18      IHandle_t *h;
19      FdHandle_t *fdP;
20      int code;
21      afs_fsize_t length;
22  
23 +    vnode = (struct VnodeDiskObject *)malloc(SIZEOF_LARGEDISKVNODE);
24      memset(vnode, 0, SIZEOF_LARGEDISKVNODE);
25  
26      V_pref(vp, nearInode);
27 @@ -282,6 +282,7 @@
28      VNDISK_GET_LEN(length, vnode);
29      V_diskused(vp) = nBlocks(length);
30  
31 +    free(vnode);
32      return 1;
33  }
34