From: Derrick Brashear Date: Tue, 24 Jul 2012 02:25:19 +0000 (-0400) Subject: afsd: cleanup syscall cleanup X-Git-Tag: upstream/1.8.0_pre1^2~2170 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=a3b6a940f84a35aa3ae0d3ee6963ef4086f3a3a4;p=packages%2Fo%2Fopenafs.git afsd: cleanup syscall cleanup sadly ead743db5d57afa175f5dc0828b76881bcbcbf54 missed a few bugs. fix them here. Change-Id: I03d52543fb096f75ccf6dbde4f7526a7c0c576bb Reviewed-on: http://gerrit.openafs.org/7852 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- diff --git a/src/afsd/afsd.c b/src/afsd/afsd.c index 96d3add39..cfccb9e34 100644 --- a/src/afsd/afsd.c +++ b/src/afsd/afsd.c @@ -2200,7 +2200,7 @@ afsd_run(void) cparams.setTimeFlag = 0; cparams.memCacheFlag = cacheFlags; cparams.dynamic_vcaches = afsd_dynamic_vcaches; - afsd_syscall(AFSOP_CACHEINIT, &cparams); + afsd_syscall(AFSOP_CACHEINIT, &cparams); /* do it before we init the cache inodes */ if (enable_splitcache) { @@ -2594,16 +2594,21 @@ afsd_syscall_populate(struct afsd_syscall_args *args, int syscall, va_list ap) switch (syscall) { case AFSOP_RXEVENT_DAEMON: + case AFSOP_CLOSEWAIT: + case AFSOP_START_AFS: + case AFSOP_START_CS: + case AFSOP_START_TRUNCDAEMON: break; case AFSOP_START_BKG: case AFSOP_SHUTDOWN: case AFSOP_SET_RXPCK: case AFSOP_BASIC_INIT: case AFSOP_SET_RXMAXFRAGS: - case AFSOP_SET_RXMAXMTU: + case AFSOP_SET_RXMAXMTU: case AFSOP_SET_DYNROOT: case AFSOP_SET_FAKESTAT: case AFSOP_SET_BACKUPTREE: + case AFSOP_BUCKETPCT: case AFSOP_GO: params[0] = CAST_SYSCALL_PARAM((va_arg(ap, int))); break; @@ -2611,6 +2616,9 @@ afsd_syscall_populate(struct afsd_syscall_args *args, int syscall, va_list ap) case AFSOP_ROOTVOLUME: case AFSOP_VOLUMEINFO: case AFSOP_CACHEFILE: + case AFSOP_CACHEINFO: + case AFSOP_CACHEINIT: + case AFSOP_CELLINFO: params[0] = CAST_SYSCALL_PARAM((va_arg(ap, void *))); break; case AFSOP_ADDCELLALIAS: diff --git a/src/afsd/afsd_kernel.c b/src/afsd/afsd_kernel.c index 8e5caeece..1024f6f95 100644 --- a/src/afsd/afsd_kernel.c +++ b/src/afsd/afsd_kernel.c @@ -178,7 +178,7 @@ os_syscall64(struct afsd_syscall_args *args) syscall64_data.param5 = args->params[3]; syscall64_data.param6 = args->params[4]; - error = ioctl(fd, VIOC_SYSCALL64, syscall64_data); + error = ioctl(fd, VIOC_SYSCALL64, &syscall64_data); close(fd); if (error)