docs: def scan_cgroups(subsys_name, filters=list()):
      """
      It returns a control group hierarchy which belong to the subsys_name.
      When collecting cgroups, filters are applied to the cgroups. See pydoc
      of apply_filters method of CGroup for more information about the filters.
      """
      status = SubsystemStatus()
      if subsys_name not in status.get_all():
          raise NoSuchSubsystemError("No such subsystem found: " + subsys_name)
  
      if subsys_name not in status.get_available():
          raise EnvironmentError("Disabled in the kernel: " + subsys_name)
  
      if subsys_name not in status.get_enabled():
          raise EnvironmentError("Not enabled in the system: " + subsys_name)
  
      subsystem = _get_subsystem(subsys_name)
      mount_point = status.get_path(subsys_name)
      return _scan_cgroups_recursive(subsystem, mount_point, mount_point, filters)