summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2014-04-25 16:14:19 +1000
committerChris Johns <chrisj@rtems.org>2014-04-25 16:14:19 +1000
commitc9a0a10dde72a9d8ff08a3520fcddb28553c497f (patch)
tree8bfeeed060dbefc68f08a930b80d5ad3596cef12
parentmcf52235/configure.ac: Delete junk line (diff)
downloadrtems-c9a0a10dde72a9d8ff08a3520fcddb28553c497f.tar.bz2
rtems: Account for file system semaphores.
Add support to account for the semaphores used by the file systems.
-rw-r--r--cpukit/sapi/include/confdefs.h34
1 files changed, 32 insertions, 2 deletions
diff --git a/cpukit/sapi/include/confdefs.h b/cpukit/sapi/include/confdefs.h
index 69c74f7bad..ba1b47f273 100644
--- a/cpukit/sapi/include/confdefs.h
+++ b/cpukit/sapi/include/confdefs.h
@@ -422,8 +422,14 @@ const rtems_libio_helper rtems_fs_init_helper =
#if !defined(CONFIGURE_FILESYSTEM_ENTRY_NFS) && \
defined(CONFIGURE_FILESYSTEM_NFS)
#include <librtemsNfs.h>
+ #if !defined(CONFIGURE_MAXIMUM_NFS_MOUNTS)
+ #define CONFIGURE_MAXIMUM_NFS_MOUNTS 1
+ #endif
#define CONFIGURE_FILESYSTEM_ENTRY_NFS \
{ RTEMS_FILESYSTEM_TYPE_NFS, rtems_nfs_initialize }
+ #define CONFIGURE_SEMAPHORES_FOR_NFS ((CONFIGURE_MAXIMUM_NFS_MOUNTS * 2) + 1)
+ #else
+ #define CONFIGURE_SEMAPHORES_FOR_NFS 0
#endif
#endif
@@ -433,8 +439,14 @@ const rtems_libio_helper rtems_fs_init_helper =
#if !defined(CONFIGURE_FILESYSTEM_ENTRY_DOSFS) && \
defined(CONFIGURE_FILESYSTEM_DOSFS)
#include <rtems/dosfs.h>
+ #if !defined(CONFIGURE_MAXIMUM_DOSFS_MOUNTS)
+ #define CONFIGURE_MAXIMUM_DOSFS_MOUNTS 1
+ #endif
#define CONFIGURE_FILESYSTEM_ENTRY_DOSFS \
{ RTEMS_FILESYSTEM_TYPE_DOSFS, rtems_dosfs_initialize }
+ #define CONFIGURE_SEMAPHORES_FOR_DOSFS CONFIGURE_MAXIMUM_DOSFS_MOUNTS
+#else
+ #define CONFIGURE_SEMAPHORES_FOR_DOSFS 0
#endif
/**
@@ -443,8 +455,14 @@ const rtems_libio_helper rtems_fs_init_helper =
#if !defined(CONFIGURE_FILESYSTEM_ENTRY_RFS) && \
defined(CONFIGURE_FILESYSTEM_RFS)
#include <rtems/rtems-rfs.h>
+ #if !defined(CONFIGURE_MAXIMUM_RFS_MOUNTS)
+ #define CONFIGURE_MAXIMUM_RFS_MOUNTS 1
+ #endif
#define CONFIGURE_FILESYSTEM_ENTRY_RFS \
{ RTEMS_FILESYSTEM_TYPE_RFS, rtems_rfs_rtems_initialise }
+ #define CONFIGURE_SEMAPHORES_FOR_RFS CONFIGURE_MAXIMUM_RFS_MOUNTS
+#else
+ #define CONFIGURE_SEMAPHORES_FOR_RFS 0
#endif
/**
@@ -453,10 +471,22 @@ const rtems_libio_helper rtems_fs_init_helper =
#if !defined(CONFIGURE_FILESYSTEM_ENTRY_JFFS2) && \
defined(CONFIGURE_FILESYSTEM_JFFS2)
#include <rtems/jffs2.h>
+ #if !defined(CONFIGURE_MAXIMUM_JFFS2_MOUNTS)
+ #define CONFIGURE_MAXIMUM_JFFS2_MOUNTS 1
+ #endif
#define CONFIGURE_FILESYSTEM_ENTRY_JFFS2 \
{ RTEMS_FILESYSTEM_TYPE_JFFS2, rtems_jffs2_initialize }
+ #define CONFIGURE_SEMAPHORES_FOR_JFFS2 CONFIGURE_MAXIMUM_JFFS2_MOUNTS
+#else
+ #define CONFIGURE_SEMAPHORES_FOR_JFFS2 0
#endif
+#define CONFIGURE_SEMAPHORES_FOR_FILE_SYSTEMS (CONFIGURE_SEMAPHORES_FOR_FIFOS + \
+ CONFIGURE_SEMAPHORES_FOR_NFS + \
+ CONFIGURE_SEMAPHORES_FOR_DOSFS + \
+ CONFIGURE_SEMAPHORES_FOR_RFS + \
+ CONFIGURE_SEMAPHORES_FOR_JFFS2)
+
#ifdef CONFIGURE_INIT
/**
@@ -1751,7 +1781,7 @@ const rtems_libio_helper rtems_fs_init_helper =
#define CONFIGURE_SEMAPHORES \
(CONFIGURE_MAXIMUM_SEMAPHORES + CONFIGURE_LIBIO_SEMAPHORES + \
CONFIGURE_TERMIOS_SEMAPHORES + CONFIGURE_LIBBLOCK_SEMAPHORES + \
- CONFIGURE_SEMAPHORES_FOR_FIFOS)
+ CONFIGURE_SEMAPHORES_FOR_FILE_SYSTEMS)
/*
* If there are no user or support semaphores defined, then we can assume
@@ -2863,7 +2893,7 @@ const rtems_libio_helper rtems_fs_init_helper =
* If an attempt was made to configure POSIX objects and
* the POSIX API was not configured into RTEMS, error out.
*
- * @note POSIX Keys are always available so the parameters
+ * @note POSIX Keys are always available so the parameters
* CONFIGURE_MAXIMUM_POSIX_KEYS and
* CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS are not in this list.
*/