diff --git a/yt/analysis_modules/halo_finding/rockstar/rockstar.py b/yt/analysis_modules/halo_finding/rockstar/rockstar.py
index 78ec380fd..de78f6140 100644
--- a/yt/analysis_modules/halo_finding/rockstar/rockstar.py
+++ b/yt/analysis_modules/halo_finding/rockstar/rockstar.py
@@ -214,7 +214,7 @@ class RockstarHaloFinder(ParallelAnalysisInterface):
             ts = DatasetSeries([ts])
         self.ts = ts
         self.particle_type = particle_type
-        self.outbase = outbase
+        self.outbase = six.b(outbase)
         self.min_halo_size = min_halo_size
         if force_res is None:
             tds = ts[-1] # Cache a reference
@@ -296,7 +296,8 @@ class RockstarHaloFinder(ParallelAnalysisInterface):
             server_address, port = None, None
         self.server_address, self.port = self.comm.mpi_bcast(
             (server_address, port))
-        self.port = str(self.port)
+        self.server_address = six.b(self.server_address)
+        self.port = six.b(str(self.port))
 
     def run(self, block_ratio = 1, callbacks = None, restart = False):
         """
@@ -328,8 +329,8 @@ class RockstarHaloFinder(ParallelAnalysisInterface):
         else:
             restart_num = 0
         self.handler.setup_rockstar(
-                    six.b(self.server_address),
-                    six.b(self.port),
+                    self.server_address,
+                    self.port,
                     num_outputs, self.total_particles, 
                     self.particle_type,
                     particle_mass = self.particle_mass,
@@ -338,7 +339,7 @@ class RockstarHaloFinder(ParallelAnalysisInterface):
                     num_writers = self.num_writers,
                     writing_port = -1,
                     block_ratio = block_ratio,
-                    outbase = six.b(self.outbase),
+                    outbase = self.outbase,
                     force_res = self.force_res,
                     callbacks = callbacks,
                     restart_num = restart_num,
@@ -351,7 +352,7 @@ class RockstarHaloFinder(ParallelAnalysisInterface):
                 os.makedirs(self.outbase)
             # Make a record of which dataset corresponds to which set of
             # output files because it will be easy to lose this connection.
-            fp = open(self.outbase + '/datasets.txt', 'w')
+            fp = open(self.outbase.decode() + '/datasets.txt', 'w')
             fp.write("# dsname\tindex\n")
             for i, ds in enumerate(self.ts):
                 dsloc = path.join(path.relpath(ds.fullpath), ds.basename)