FBSD: Switch the dummy 'data' for mount(2)
authorBenjamin Kaduk <kaduk@mit.edu>
Thu, 6 Feb 2014 22:01:19 +0000 (17:01 -0500)
committerJeffrey Altman <jaltman@your-file-system.com>
Sat, 8 Feb 2014 22:20:49 +0000 (14:20 -0800)
The mount(2) API takes a void*, but 'rn' is const char*, which
is const-incorrect.  Our vfs_cmount implementation ignores the 'data'
parameter, but upstream's kernel mount(2) implementation did
have a NULL check until r158611 (in the 6.1 or 7.0 timeframe),
so leave that comment for now.

Arguably we should be using nmount(2) instead of mount(2) anyway,
but leave that for a separate patch.

Change-Id: I22fd85c2f1a32aa849e182d263de119a953690d2
Reviewed-on: http://gerrit.openafs.org/10821
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>

src/afsd/afsd_kernel.c

index a58be2c..f3cfab6 100644 (file)
@@ -489,8 +489,8 @@ afsd_mount_afs(const char *rn, const char *cacheMountDir)
        printf("%s: Mounting the AFS root on '%s', flags: %d.\n", rn,
            cacheMountDir, mountFlags);
 #if defined(AFS_FBSD60_ENV)
-    /* data must be non-NULL but is otherwise ignored */
-    if ((mount(MOUNT_AFS, cacheMountDir, mountFlags, rn)) < 0) {
+    /* data must be non-const non-NULL but is otherwise ignored */
+    if ((mount(MOUNT_AFS, cacheMountDir, mountFlags, &mountFlags)) < 0) {
 #elif defined(AFS_FBSD_ENV)
     if ((mount("AFS", cacheMountDir, mountFlags, (caddr_t) 0)) < 0) {
 #elif defined(AFS_AIX_ENV)