.. title:: RTATestBundle lisa.tests.base.RTATestBundle ============================= .. autoclass:: lisa.tests.base::RTATestBundle :no-members: :no-inherited-members: :no-undoc-members: :no-private-members: :no-special-members: .. rubric:: Classes .. list-table:: :align: left * - :class:`~lisa.tests.base.TestBundleBase.__class__` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.TestBundleBase.__class__ Metaclass of :class:`TestBundleBase`. .. rubric:: Attributes .. list-table:: :align: left * - :attr:`~lisa.tests.base.RTATestBundle.NOISE_ACCOUNTING_THRESHOLDS` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle PID/comm specific tuning for :meth:`test_noisy_tasks`. * - :attr:`~lisa.tests.base.RTATestBundle.TASK_PERIOD` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle A task period in seconds you can re-use for your :class:`lisa.wlgen.rta.RTATask` definitions. * - :attr:`~lisa.utils.Serializable.ATTRIBUTES_SERIALIZATION` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Serializable Attributes to be treated specially during serialization. * - :attr:`~lisa.tests.base.DmesgTestBundleBase.CANNED_DMESG_IGNORED_PATTERNS` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.DmesgTestBundleBase Mapping of canned patterns to avoid repetition while defining :attr:`lisa.tests.base.DmesgTestBundleBase.DMESG_IGNORED_PATTERNS` in subclasses. * - :attr:`~lisa.utils.Serializable.DEFAULT_SERIALIZATION_FMT` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Serializable Default format used when serializing objects. * - :attr:`~lisa.tests.base.DmesgTestBundleBase.DMESG_IGNORED_PATTERNS` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.DmesgTestBundleBase List of patterns to ignore in addition to the ones passed to :meth:`~lisa.tests.base.DmesgTestBundle.test_dmesg`. * - :attr:`~lisa.tests.base.DmesgTestBundleBase.DMESG_PATH` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.DmesgTestBundleBase Path to the dmesg log in the result directory. * - :attr:`~lisa.tests.base.RTATestBundle.FTRACE_CONF` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle * - :attr:`~lisa.tests.base.FtraceTestBundleBase.TRACE_PATH` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.FtraceTestBundleBase Path to the ``trace-cmd`` trace.dat file in the result directory. * - :attr:`~lisa.tests.base.TestBundleBase.VERIFY_SERIALIZATION` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.TestBundleBase When True, this enforces a serialization/deserialization step in :meth:`from_target`. * - :attr:`~lisa.utils.Serializable.YAML_ENCODING` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Serializable Encoding used for YAML files. * - :attr:`~lisa.tests.base.RTATestBundle.ftrace_conf` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle .. rubric:: Properties .. list-table:: :align: left * - :attr:`~lisa.tests.base.RTATestBundle.cgroup_configuration` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle Compute the cgroup configuration based on ``plat_info``. * - :attr:`~lisa.tests.base.RTATestBundle.rtapp_profile` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle Compute the RTapp profile based on ``plat_info``. * - :attr:`~lisa.tests.base.RTATestBundle.rtapp_task_ids` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle The rtapp task :class:`lisa.analysis.tasks.TaskID` as found from the trace in this bundle. * - :attr:`~lisa.tests.base.RTATestBundle.rtapp_task_ids_map` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle Mapping of task names as specified in the rtapp profile to list of :class:`lisa.analysis.tasks.TaskID` names found in the trace. * - :attr:`~lisa.tests.base.RTATestBundle.rtapp_tasks` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle Same as :func:`rtapp_task_ids` but as a list of string. * - :attr:`~lisa.tests.base.RTATestBundle.rtapp_tasks_map` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle Same as :func:`rtapp_task_ids_map` but with list of strings for values. * - :attr:`~lisa.tests.base.RTATestBundle.trace` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle A :class:`lisa.trace.Trace` cropped to the window given by :meth:`trace_window`. * - :attr:`~lisa.tests.base.TestBundleBase._children_test_bundles` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.TestBundleBase * - :attr:`~lisa.tests.base.DmesgTestBundleBase.dmesg_entries` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.DmesgTestBundleBase List of parsed dmesg output entries :class:`devlib.collector.dmesg.KernelLogEntry`. * - :attr:`~lisa.tests.base.DmesgTestBundleBase.dmesg_path` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.DmesgTestBundleBase Path to the dmesg output log file. * - :attr:`~lisa.utils.Loggable.logger` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Loggable Convenience short-hand for ``self.get_logger()``. * - :attr:`~lisa.tests.base.FtraceTestBundleBase.trace_path` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.FtraceTestBundleBase Path to the ``trace-cmd report`` trace.dat file. .. rubric:: Methods .. list-table:: :align: left * - :attr:`~lisa.tests.base.RTATestBundle._from_target` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.TestBundleBase * - :meth:`~lisa.tests.base.RTATestBundle._get_rtapp_profile` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle * - :meth:`~lisa.tests.base.RTATestBundle._run_rtapp` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle * - :meth:`~lisa.tests.base.RTATestBundle.df_noisy_tasks` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle :returns: a DataFrame containing all tasks that participate to the test noise. i.e. all non rt-app tasks. * - :meth:`~lisa.tests.base.RTATestBundle.from_target` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle Factory method to create a bundle using a live target. * - :meth:`~lisa.tests.base.RTATestBundle.get_cgroup_configuration` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle :returns: a :class:`dict` representing the configuration of a particular cgroup. * - :meth:`~lisa.tests.base.RTATestBundle.get_rtapp_profile` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle Returns a :class:`dict` with task names as keys and :class:`lisa.wlgen.rta.RTATask` as values. * - :meth:`~lisa.tests.base.RTATestBundle.run_rtapp` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle Run the given RTA profile on the target, and collect an ftrace trace. * - :meth:`~lisa.tests.base.RTATestBundle.test_noisy_tasks` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle Test that no non-rtapp ("noisy") task ran for longer than the specified thresholds. * - :meth:`~lisa.tests.base.RTATestBundle.trace_window` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle The time window to consider for this :class:`RTATestBundle`. * - :meth:`~lisa.tests.base.RTATestBundle.unscaled_utilization` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.RTATestBundle Convert utilization scaled to a CPU to a 'raw', unscaled one. * - :meth:`~lisa.utils.Serializable.__copy__` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Serializable Regular shallow copy operation, without dropping any attributes. * - :meth:`~lisa.utils.Serializable.__getstate__` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Serializable Filter the instance's attributes upon serialization. * - :meth:`~lisa.utils.Serializable.__setstate__` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Serializable * - :meth:`~lisa.tests.base.TestBundleBase._get_filepath` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.TestBundleBase * - :meth:`~lisa.tests.base.TestBundleBase.add_undecided_filter` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.TestBundleBase Turn any method returning a :class:`ResultBundleBase` into a decorator that can be used as a test method filter. * - :meth:`~lisa.tests.base.TestBundleBase.can_create_from_target` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.TestBundleBase :returns: Whether the given target can be used to create an instance of this class :rtype: bool. * - :meth:`~lisa.tests.base.TestBundleBase.check_from_target` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.TestBundleBase Check whether the given target can be used to create an instance of this class. * - :meth:`~lisa.tests.base.TestBundleBase.from_dir` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.TestBundleBase Wrapper around :meth:`lisa.utils.Serializable.from_path`. * - :meth:`~lisa.utils.Serializable.from_path` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Serializable Deserialize an object from a file. * - :meth:`~lisa.utils.Loggable.get_logger` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Loggable Provides a :class:`logging.Logger` named after ``cls``. * - :meth:`~lisa.tests.base.TestBundleBase.get_tags` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.TestBundleBase Dictionary of tags and tag values. * - :meth:`~lisa.tests.base.FtraceTestBundleBase.get_trace` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.FtraceTestBundleBase :returns: a :class:`lisa.trace.Trace` collected in the standard location. * - :meth:`~lisa.utils.Loggable.log_locals` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Loggable Debugging aid: log the local variables of the calling function. * - :meth:`~lisa.tests.base.DmesgTestBundle.test_dmesg` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.DmesgTestBundle Basic test on kernel dmesg output. * - :meth:`~lisa.tests.base.TestBundleBase.to_dir` :sup:`inherited` - .. withrefctx:: :module: lisa.tests.base :class: lisa.tests.base.TestBundleBase See :meth:`lisa.utils.Serializable.to_path`. * - :meth:`~lisa.utils.Serializable.to_path` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Serializable Serialize the object to a file. * - :meth:`~lisa.utils.Serializable.to_yaml` :sup:`inherited` - .. withrefctx:: :module: lisa.utils :class: lisa.utils.Serializable Return a YAML string with the serialized object. Classes ------- .. autoclass:: lisa.tests.base::RTATestBundle.__class__ Attributes ---------- .. autoattribute:: lisa.tests.base::RTATestBundle.NOISE_ACCOUNTING_THRESHOLDS .. autoattribute:: lisa.tests.base::RTATestBundle.TASK_PERIOD .. autoattribute:: lisa.tests.base::RTATestBundle.ATTRIBUTES_SERIALIZATION .. autoattribute:: lisa.tests.base::RTATestBundle.CANNED_DMESG_IGNORED_PATTERNS .. autoattribute:: lisa.tests.base::RTATestBundle.DEFAULT_SERIALIZATION_FMT .. autoattribute:: lisa.tests.base::RTATestBundle.DMESG_IGNORED_PATTERNS .. autoattribute:: lisa.tests.base::RTATestBundle.DMESG_PATH .. autoattribute:: lisa.tests.base::RTATestBundle.FTRACE_CONF .. autoattribute:: lisa.tests.base::RTATestBundle.TRACE_PATH .. autoattribute:: lisa.tests.base::RTATestBundle.VERIFY_SERIALIZATION .. autoattribute:: lisa.tests.base::RTATestBundle.YAML_ENCODING .. autoattribute:: lisa.tests.base::RTATestBundle.ftrace_conf Properties ---------- .. autoproperty:: lisa.tests.base::RTATestBundle.cgroup_configuration .. autoproperty:: lisa.tests.base::RTATestBundle.rtapp_profile .. autoproperty:: lisa.tests.base::RTATestBundle.rtapp_task_ids .. autoproperty:: lisa.tests.base::RTATestBundle.rtapp_task_ids_map .. autoproperty:: lisa.tests.base::RTATestBundle.rtapp_tasks .. autoproperty:: lisa.tests.base::RTATestBundle.rtapp_tasks_map .. autoproperty:: lisa.tests.base::RTATestBundle.trace .. autoproperty:: lisa.tests.base::RTATestBundle._children_test_bundles .. autoproperty:: lisa.tests.base::RTATestBundle.dmesg_entries .. autoproperty:: lisa.tests.base::RTATestBundle.dmesg_path .. autoproperty:: lisa.tests.base::RTATestBundle.logger .. autoproperty:: lisa.tests.base::RTATestBundle.trace_path Methods ------- .. automethod:: lisa.tests.base::RTATestBundle._from_target .. automethod:: lisa.tests.base::RTATestBundle._get_rtapp_profile .. automethod:: lisa.tests.base::RTATestBundle._run_rtapp .. automethod:: lisa.tests.base::RTATestBundle.df_noisy_tasks .. automethod:: lisa.tests.base::RTATestBundle.from_target .. automethod:: lisa.tests.base::RTATestBundle.get_cgroup_configuration .. automethod:: lisa.tests.base::RTATestBundle.get_rtapp_profile .. automethod:: lisa.tests.base::RTATestBundle.run_rtapp .. automethod:: lisa.tests.base::RTATestBundle.test_noisy_tasks .. automethod:: lisa.tests.base::RTATestBundle.trace_window .. automethod:: lisa.tests.base::RTATestBundle.unscaled_utilization .. automethod:: lisa.tests.base::RTATestBundle.__copy__ .. automethod:: lisa.tests.base::RTATestBundle.__getstate__ .. automethod:: lisa.tests.base::RTATestBundle.__setstate__ .. automethod:: lisa.tests.base::RTATestBundle._get_filepath .. automethod:: lisa.tests.base::RTATestBundle.add_undecided_filter .. automethod:: lisa.tests.base::RTATestBundle.can_create_from_target .. automethod:: lisa.tests.base::RTATestBundle.check_from_target .. automethod:: lisa.tests.base::RTATestBundle.from_dir .. automethod:: lisa.tests.base::RTATestBundle.from_path .. automethod:: lisa.tests.base::RTATestBundle.get_logger .. automethod:: lisa.tests.base::RTATestBundle.get_tags .. automethod:: lisa.tests.base::RTATestBundle.get_trace .. automethod:: lisa.tests.base::RTATestBundle.log_locals .. automethod:: lisa.tests.base::RTATestBundle.test_dmesg .. automethod:: lisa.tests.base::RTATestBundle.to_dir .. automethod:: lisa.tests.base::RTATestBundle.to_path .. automethod:: lisa.tests.base::RTATestBundle.to_yaml