You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by sv...@apache.org on 2014/02/19 05:00:28 UTC

svn commit: r1569626 - in /subversion/branches/1.8.x: ./ STATUS subversion/libsvn_fs_fs/fs.c

Author: svn-role
Date: Wed Feb 19 04:00:28 2014
New Revision: 1569626

URL: http://svn.apache.org/r1569626
Log:
Merge the r1568953 group from trunk:

 * r1568953, r1568955
   Ensure that access to the FSFS transaction list and free transaction pointer
   is properly synchronized on Windows.
   Justification:
     Possible memory corruption in multi-threaded server on Windows. Regression
     from 1.7.x.
   Votes:
     +1: ivan, rhuijben, philip

Modified:
    subversion/branches/1.8.x/   (props changed)
    subversion/branches/1.8.x/STATUS
    subversion/branches/1.8.x/subversion/libsvn_fs_fs/fs.c

Propchange: subversion/branches/1.8.x/
------------------------------------------------------------------------------
  Merged /subversion/trunk:r1568953,1568955

Modified: subversion/branches/1.8.x/STATUS
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x/STATUS?rev=1569626&r1=1569625&r2=1569626&view=diff
==============================================================================
--- subversion/branches/1.8.x/STATUS (original)
+++ subversion/branches/1.8.x/STATUS Wed Feb 19 04:00:28 2014
@@ -207,12 +207,3 @@ Veto-blocked changes:
 
 Approved changes:
 =================
-
- * r1568953, r1568955
-   Ensure that access to the FSFS transaction list and free transaction pointer
-   is properly synchronized on Windows.
-   Justification:
-     Possible memory corruption in multi-threaded server on Windows. Regression
-     from 1.7.x.
-   Votes:
-     +1: ivan, rhuijben, philip

Modified: subversion/branches/1.8.x/subversion/libsvn_fs_fs/fs.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/libsvn_fs_fs/fs.c?rev=1569626&r1=1569625&r2=1569626&view=diff
==============================================================================
--- subversion/branches/1.8.x/subversion/libsvn_fs_fs/fs.c (original)
+++ subversion/branches/1.8.x/subversion/libsvn_fs_fs/fs.c Wed Feb 19 04:00:28 2014
@@ -98,8 +98,11 @@ fs_serialized_init(svn_fs_t *fs, apr_poo
       SVN_ERR(svn_mutex__init(&ffsd->txn_current_lock,
                               SVN_FS_FS__USE_LOCK_MUTEX, common_pool));
 
+      /* We also need a mutex for synchronizing access to the active
+         transaction list and free transaction pointer.  This one is
+         enabled unconditionally. */
       SVN_ERR(svn_mutex__init(&ffsd->txn_list_lock,
-                              SVN_FS_FS__USE_LOCK_MUTEX, common_pool));
+                              TRUE, common_pool));
 
       key = apr_pstrdup(common_pool, key);
       status = apr_pool_userdata_set(ffsd, key, NULL, common_pool);