From d5d07140ea2533f015afd586094ac135cc8c830c Mon Sep 17 00:00:00 2001
From: Patrick Godwin <patrick.godwin@ligo.org>
Date: Wed, 8 May 2019 06:51:47 -0700
Subject: [PATCH] multichannel_datasource.py: call smrepair before startup if
 using lvshm datasource

---
 gstlal-burst/python/fxtools/multichannel_datasource.py | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/gstlal-burst/python/fxtools/multichannel_datasource.py b/gstlal-burst/python/fxtools/multichannel_datasource.py
index 7e76edb3dd..d943632117 100644
--- a/gstlal-burst/python/fxtools/multichannel_datasource.py
+++ b/gstlal-burst/python/fxtools/multichannel_datasource.py
@@ -463,6 +463,11 @@ class DataSourceInfo(object):
 		## Data source, one of python.datasource.DataSourceInfo.data_sources
 		self.data_source = options.data_source
 
+		# FIXME: this is ugly, but we have to protect against busted shared memory partitions
+		if self.data_source == "lvshm":
+			import subprocess
+			subprocess.call(["smrepair", "-bufmode", "5", self.shm_part_dict[self.instrument]])
+
 def append_options(parser):
 	"""!
 	Append generic data source options to an OptionParser object in order
-- 
GitLab