From: Derrick Brashear Date: Mon, 26 Nov 2007 22:13:53 +0000 (+0000) Subject: STABLE14-volprocs-alloc-vnode-instead-of-using-stack-20071126 X-Git-Tag: openafs-stable-1_4_7pre1~152 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=2943b4f47ea404a3ad9ebdacbdc1bc277041c497;p=packages%2Fo%2Fopenafs.git STABLE14-volprocs-alloc-vnode-instead-of-using-stack-20071126 don't use stack here; alloc memory for short term use (cherry picked from commit 4f98eb48fccde9dd70708b2dd6b0903745d16b7a) --- diff --git a/src/volser/volprocs.c b/src/volser/volprocs.c index 18ce86233..ecc1bb10e 100644 --- a/src/volser/volprocs.c +++ b/src/volser/volprocs.c @@ -203,14 +203,14 @@ ViceCreateRoot(Volume *vp) struct acl_accessList *ACL; ViceFid did; Inode inodeNumber, nearInode; - char buf[SIZEOF_LARGEDISKVNODE]; - struct VnodeDiskObject *vnode = (struct VnodeDiskObject *)buf; + struct VnodeDiskObject *vnode; struct VnodeClassInfo *vcp = &VnodeClassInfo[vLarge]; IHandle_t *h; FdHandle_t *fdP; int code; afs_fsize_t length; + vnode = (struct VnodeDiskObject *)malloc(SIZEOF_LARGEDISKVNODE); memset(vnode, 0, SIZEOF_LARGEDISKVNODE); V_pref(vp, nearInode); @@ -275,6 +275,7 @@ ViceCreateRoot(Volume *vp) VNDISK_GET_LEN(length, vnode); V_diskused(vp) = nBlocks(length); + free(vnode); return 1; }