diff --git a/mininet/node.py b/mininet/node.py
index 48424e70cf6faaee50943fcdf5123a7d06cf5381..0b435fccb3d89f4e03abd96c23ed70b41990e83c 100644
--- a/mininet/node.py
+++ b/mininet/node.py
@@ -261,6 +261,8 @@ def monitor( self, timeoutms=None, findPid=True ):
         # Look for PID
         marker = chr( 1 ) + r'\d+\r\n'
         if findPid and chr( 1 ) in data:
+            while not re.findall( marker, data ):
+                data += self.read( 1024 )
             markers = re.findall( marker, data )
             if markers:
                 self.lastPid = int( markers[ 0 ][ 1: ] )