diff --git a/src/afsd/afsd.c b/src/afsd/afsd.c index ab85fffa36..964b66f475 100644 --- a/src/afsd/afsd.c +++ b/src/afsd/afsd.c @@ -1074,6 +1074,10 @@ CheckCacheBaseDir(char *dir) return "cannot use reiserfs as cache partition"; } else if (statfsbuf.f_type == 0x58465342) { /* XFS_SUPER_MAGIC */ return "cannot use xfs as cache partition"; + } else if (statfsbuf.f_type == 0x01021994) { /* TMPFS_SUPER_MAGIC */ + return "cannot use tmpfs as cache partition"; + } else if (statfsbuf.f_type != 0xEF53) { + return "must use ext2 or ext3 for cache partition"; } } #endif @@ -1741,7 +1745,12 @@ mainproc(struct cmd_syndesc *as, char *arock) if (!(cacheFlags & AFSCALL_INIT_MEMCACHE) && (fsTypeMsg = CheckCacheBaseDir(cacheBaseDir))) { +#ifdef AFS_SUN5_ENV printf("%s: WARNING: Cache dir check failed (%s)\n", rn, fsTypeMsg); +#else + printf("%s: ERROR: Cache dir check failed (%s)\n", rn, fsTypeMsg); + exit(1); +#endif } #if 0 fputs(AFS_GOVERNMENT_MESSAGE, stdout);