code: def no_interrupt(syscall, *args, **kwargs):
      
      ret = None
  
      while True:
          try:
              ret = syscall(*args, **kwargs)
          except OSError as e:
              if e.errno == errno.EINTR:
                  continue
              else:
                  raise
          else:
              break
  
      return ret
docs: a helper for making system calls immune to EINTR