<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>change log for rtems (2011-11-03)</title>
</head>
<body text='#000000' bgcolor='#ffffff'>
<a name='cs1'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
 <font color='#bb2222'><strong>ccj</strong></font>
 <font color='#225522'><em>(on branch rtems-4-10-branch)</em></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>2011-11-03      Chris Johns <chrisj@rtems.org>

        PR 1948/filesystem
        * libfs/src/rfs/rtems-rfs-file-system.c,
        libfs/src/rfs/rtems-rfs-file-system.h,
        libfs/src/rfs/rtems-rfs-format.c, libfs/src/rfs/rtems-rfs-rtems.c:
        Add support for mount passing an ASCIIZ string containing
        configuration options.
        * libblock/src/bdbuf.c: Fix state labels in trace output.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/ChangeLog.diff?r1=text&tr1=1.2346.2.103&r2=text&tr2=1.2346.2.104&diff_format=h">M</a></td><td width='1%'>1.2346.2.104</td><td width='100%'>cpukit/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libblock/src/bdbuf.c.diff?r1=text&tr1=1.52&r2=text&tr2=1.52.2.1&diff_format=h">M</a></td><td width='1%'>1.52.2.1</td><td width='100%'>cpukit/libblock/src/bdbuf.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/rfs/rtems-rfs-file-system.h.diff?r1=text&tr1=1.3.2.4&r2=text&tr2=1.3.2.5&diff_format=h">M</a></td><td width='1%'>1.3.2.5</td><td width='100%'>cpukit/libfs/src/rfs/rtems-rfs-file-system.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/rfs/rtems-rfs-file-system.c.diff?r1=text&tr1=1.4.2.2&r2=text&tr2=1.4.2.3&diff_format=h">M</a></td><td width='1%'>1.4.2.3</td><td width='100%'>cpukit/libfs/src/rfs/rtems-rfs-file-system.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/rfs/rtems-rfs-format.c.diff?r1=text&tr1=1.5.2.3&r2=text&tr2=1.5.2.4&diff_format=h">M</a></td><td width='1%'>1.5.2.4</td><td width='100%'>cpukit/libfs/src/rfs/rtems-rfs-format.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems.c.diff?r1=text&tr1=1.9.2.3&r2=text&tr2=1.9.2.4&diff_format=h">M</a></td><td width='1%'>1.9.2.4</td><td width='100%'>cpukit/libfs/src/rfs/rtems-rfs-rtems.c</td></tr>
</table>
<pre>
<font color='#006600'>diff -u rtems/cpukit/ChangeLog:1.2346.2.103 rtems/cpukit/ChangeLog:1.2346.2.104
--- rtems/cpukit/ChangeLog:1.2346.2.103 Sat Oct  8 23:48:18 2011
+++ rtems/cpukit/ChangeLog      Wed Nov  2 23:23:04 2011
</font><font color='#997700'>@@ -1,3 +1,13 @@
</font><font color='#000088'>+2011-11-03    Chris Johns <chrisj@rtems.org>
+
+       PR 1948/filesystem
+       * libfs/src/rfs/rtems-rfs-file-system.c,
+       libfs/src/rfs/rtems-rfs-file-system.h,
+       libfs/src/rfs/rtems-rfs-format.c, libfs/src/rfs/rtems-rfs-rtems.c:
+       Add support for mount passing an ASCIIZ string containing
+       configuration options.
+       * libblock/src/bdbuf.c: Fix state labels in trace output.
+
</font> 2011-10-09        Ralf Corsépius <ralf.corsepius@rtems.org>
 
        * libmisc/serdbg/serdbg.h (putDebugChar, getDebugChar):

<font color='#006600'>diff -u rtems/cpukit/libblock/src/bdbuf.c:1.52 rtems/cpukit/libblock/src/bdbuf.c:1.52.2.1
--- rtems/cpukit/libblock/src/bdbuf.c:1.52      Mon May 17 21:14:05 2010
+++ rtems/cpukit/libblock/src/bdbuf.c   Wed Nov  2 23:23:07 2011
</font><font color='#997700'>@@ -291,7 +291,7 @@
</font> rtems_bdbuf_show_users (const char* where, rtems_bdbuf_buffer* bd)
 {
   const char* states[] =
<font color='#880000'>-    { "EM", "FR", "CH", "AC", "AM", "MD", "SY", "TR" };
</font><font color='#000088'>+    { "FR", "EM", "CH", "AC", "AM", "MD", "SY", "TR" };
</font> 
   printf ("bdbuf:users: %15s: [%" PRIu32 " (%s)] %td:%td = %" PRIu32 " %s\n",
           where,

<font color='#006600'>diff -u rtems/cpukit/libfs/src/rfs/rtems-rfs-file-system.h:1.3.2.4 rtems/cpukit/libfs/src/rfs/rtems-rfs-file-system.h:1.3.2.5
--- rtems/cpukit/libfs/src/rfs/rtems-rfs-file-system.h:1.3.2.4  Thu Jun 17 17:10:20 2010
+++ rtems/cpukit/libfs/src/rfs/rtems-rfs-file-system.h  Wed Nov  2 23:23:07 2011
</font><font color='#997700'>@@ -384,11 +384,14 @@
</font>  * @param name The device to open.
  * @param fs The file system data filled in by this call.
  * @param user A pointer to user data.
<font color='#000088'>+ * @param flags The initial set of user flags for the file system.
+ * @param max_held_buffers The maximum number of buffers the RFS holds.
</font>  * @return int The error number (errno). No error if 0.
  */
 int rtems_rfs_fs_open (const char*             name,
                        void*                   user,
                        uint32_t                flags,
<font color='#000088'>+                       uint32_t                max_held_buffers,
</font>                        rtems_rfs_file_system** fs);
 
 /**

<font color='#006600'>diff -u rtems/cpukit/libfs/src/rfs/rtems-rfs-file-system.c:1.4.2.2 rtems/cpukit/libfs/src/rfs/rtems-rfs-file-system.c:1.4.2.3
--- rtems/cpukit/libfs/src/rfs/rtems-rfs-file-system.c:1.4.2.2  Thu Jun 17 17:10:20 2010
+++ rtems/cpukit/libfs/src/rfs/rtems-rfs-file-system.c  Wed Nov  2 23:23:07 2011
</font><font color='#997700'>@@ -196,6 +196,7 @@
</font> rtems_rfs_fs_open (const char*             name,
                    void*                   user,
                    uint32_t                flags,
<font color='#000088'>+                   uint32_t                max_held_buffers,
</font>                    rtems_rfs_file_system** fs)
 {
   rtems_rfs_group*       group;
<font color='#997700'>@@ -224,7 +225,7 @@
</font>   rtems_chain_initialize_empty (&(*fs)->release_modified);
   rtems_chain_initialize_empty (&(*fs)->file_shares);
 
<font color='#880000'>-  (*fs)->max_held_buffers = RTEMS_RFS_FS_MAX_HELD_BUFFERS;
</font><font color='#000088'>+  (*fs)->max_held_buffers = max_held_buffers;
</font>   (*fs)->buffers_count = 0;
   (*fs)->release_count = 0;
   (*fs)->release_modified_count = 0;

<font color='#006600'>diff -u rtems/cpukit/libfs/src/rfs/rtems-rfs-format.c:1.5.2.3 rtems/cpukit/libfs/src/rfs/rtems-rfs-format.c:1.5.2.4
--- rtems/cpukit/libfs/src/rfs/rtems-rfs-format.c:1.5.2.3       Mon Oct 11 16:12:48 2010
+++ rtems/cpukit/libfs/src/rfs/rtems-rfs-format.c       Wed Nov  2 23:23:07 2011
</font><font color='#997700'>@@ -465,7 +465,9 @@
</font>   /*
    * External API so returns -1.
    */
<font color='#880000'>-  rc = rtems_rfs_fs_open (name, NULL, RTEMS_RFS_FS_FORCE_OPEN, &fs);
</font><font color='#000088'>+  rc = rtems_rfs_fs_open (name, NULL,
+                          RTEMS_RFS_FS_FORCE_OPEN | RTEMS_RFS_FS_NO_LOCAL_CACHE,
+                          0, &fs);
</font>   if (rc < 0)
   {
     printf ("rtems-rfs: format: file system open failed: %d: %s\n",

<font color='#006600'>diff -u rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems.c:1.9.2.3 rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems.c:1.9.2.4
--- rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems.c:1.9.2.3        Sun Jul  3 19:27:36 2011
+++ rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems.c        Wed Nov  2 23:23:07 2011
</font><font color='#997700'>@@ -1268,8 +1268,40 @@
</font> {
   rtems_rfs_rtems_private* rtems;
   rtems_rfs_file_system*   fs;
<font color='#000088'>+  uint32_t                 flags = 0;
+  uint32_t                 max_held_buffers = RTEMS_RFS_FS_MAX_HELD_BUFFERS;
+  const char*              options = data;
</font>   int                      rc;
 
<font color='#000088'>+  /*
+   * Parse the options the user specifiies.
+   */
+  while (options)
+  {
+    printf ("options=%s\n", options);
+    if (strncmp (options, "hold-bitmaps",
+                 sizeof ("hold-bitmaps") - 1) == 0)
+      flags |= RTEMS_RFS_FS_BITMAPS_HOLD;
+    else if (strncmp (options, "no-local-cache",
+                      sizeof ("no-local-cache") - 1) == 0)
+      flags |= RTEMS_RFS_FS_NO_LOCAL_CACHE;
+    else if (strncmp (options, "max-held-bufs",
+                      sizeof ("max-held-bufs") - 1) == 0)
+    {
+      max_held_buffers = strtoul (options + sizeof ("max-held-bufs"), 0, 0);
+    }
+    else
+      return rtems_rfs_rtems_error ("initialise: invalid option", EINVAL);
+
+    options = strchr (options, ',');
+    if (options)
+    {
+      ++options;
+      if (*options == '\0')
+        options = NULL;
+    }
+  }
+<span style="background-color: #FF0000">  </span>
</font>   rtems = malloc (sizeof (rtems_rfs_rtems_private));
   if (!rtems)
     return rtems_rfs_rtems_error ("initialise: local data", ENOMEM);
<font color='#997700'>@@ -1291,7 +1323,7 @@
</font>     return rtems_rfs_rtems_error ("initialise: cannot lock access  mutex", rc);
   }
   
<font color='#880000'>-  rc = rtems_rfs_fs_open (mt_entry->dev, rtems, 0, &fs);
</font><font color='#000088'>+  rc = rtems_rfs_fs_open (mt_entry->dev, rtems, flags, max_held_buffers, &fs);
</font>   if (rc)
   {
     free (rtems);
</pre>
<p> </p>

<p>--<br />
<small>Generated by <a href="http://www.codewiz.org/projects/index.html#loginfo">Deluxe Loginfo</a> 2.122 by Bernardo Innocenti <bernie@develer.com></small></p>
</body>
</html>