[PATCH] xfsdump: add locks around the inventory put
Rich Johnston
rjohnston at sgi.com
Tue Oct 1 11:30:59 CDT 2013
From: Phil White <cerise-xfs at l.armory.com>
Add locks around the inventory put to prevent inventory
corruption.
Signed-off-by: Phil White <cerise-xfs at l.armory.com>
diff --git a/dump/content.c b/dump/content.c
index ac19021..b8977bb 100644
--- a/dump/content.c
+++ b/dump/content.c
@@ -2550,8 +2550,11 @@ decision_more:
scwhdrp->cih_startpt.sp_offset );
}
- /* already thread-safe, don't need to lock
+ /* Supposedly already thread-safe, according to the
+ * previous revisions, but corruption of inventory
+ * objects can occur.
*/
*/
+ lock();
ok = inv_put_mediafile( inv_stmt,
&mwhdrp->mh_mediaid,
mwhdrp->mh_medialabel,
@@ -2565,6 +2568,7 @@ decision_more:
&&
! empty_mediafile,
BOOL_FALSE );
+ unlock();
if ( ! ok ) {
mlog( MLOG_NORMAL, _(
"inventory media file put failed\n") );
More information about the xfs
mailing list