From 44ce3a664f4127b7dd18a23c57ac081711ca58fe Mon Sep 17 00:00:00 2001 From: "David B. Kinder" Date: Tue, 6 Nov 2018 16:11:06 -0800 Subject: [PATCH] doc: update HLD Trace/Log Transcode, edit, and upload HLD 0.7 section 9 (Trace/Log) Tracked-on: #1738 Signed-off-by: David B. Kinder --- doc/developer-guides/hld/hld-trace-log.rst | 237 ++++++++++++++++++ .../hld/images/log-image50.png | Bin 0 -> 43015 bytes .../hld/images/log-image59.png | Bin 0 -> 4746 bytes .../hld/images/log-image73.png | Bin 0 -> 34139 bytes 4 files changed, 237 insertions(+) create mode 100644 doc/developer-guides/hld/images/log-image50.png create mode 100644 doc/developer-guides/hld/images/log-image59.png create mode 100644 doc/developer-guides/hld/images/log-image73.png diff --git a/doc/developer-guides/hld/hld-trace-log.rst b/doc/developer-guides/hld/hld-trace-log.rst index 42d85620f..e88ce36bc 100644 --- a/doc/developer-guides/hld/hld-trace-log.rst +++ b/doc/developer-guides/hld/hld-trace-log.rst @@ -2,3 +2,240 @@ Tracing and Logging high-level design ##################################### + +Both Trace and Log are built on top of a mechanism named shared +buffer (Sbuf). + +Shared Buffer +************* + +Shared Buffer is a ring buffer divided into predetermined-size slots. There +are two use scenarios of Sbuf: + +- sbuf can serve as a lockless ring buffer to share data from ACRN HV to + SOS in non-overwritten mode. (Writing will fail if an overrun + happens.) +- sbuf can serve as a conventional ring buffer in hypervisor in + over-written mode. A lock is required to synchronize access by the + producer and consumer. + +Both ACRNTrace and ACRNLog use sbuf as a lockless ring buffer. The Sbuf +is allocated by SOS and assigned to HV via a hypercall. To hold pointers +to sbuf passed down via hypercall, an array ``sbuf[ACRN_SBUF_ID_MAX]`` +is defined in per_cpu region of HV, with predefined sbuf id to identify +the usage, such as ACRNTrace, ACRNLog, etc. + +For each physical CPU there is a dedicated Sbuf. Only a single producer +is allowed to put data into that Sbuf in HV, and a single consumer is +allowed to get data from Sbuf in SOS. Therefore, no lock is required to +synchronize access by the producer and consumer. + +sbuf APIs +========= + +.. note:: reference APIs defined in hypervisor/include/debug/sbuf.h + + +ACRN Trace +********** + +ACRNTrace is a tool running on the Service OS (SOS) to capture trace +data. It allows developers to add performance profiling trace points at +key locations to get a picture of what is going on inside the +hypervisor. Scripts to analyze the collected trace data are also +provided. + +As shown in :numref:`acrntrace-arch`, ACRNTrace is built using +Shared Buffers (Sbuf), and consists of three parts from bottom layer +up: + +- **ACRNTrace userland app**: Userland application collecting trace data to + files (Per Physical CPU) + +- **SOS Trace Module**: allocates/frees SBufs, creates device for each + SBuf, sets up sbuf shared between SOS and HV, and provides a dev node for the + userland app to retrieve trace data from Sbuf + +- **Trace APIs**: provide APIs to generate trace event and insert to Sbuf. + +.. figure:: images/log-image50.png + :align: center + :name: acrntrace-arch + + Architectural diagram of ACRNTrace + +Trace APIs +========== + +.. note:: reference APIs defined in hypervisor/include/debug/trace.h + for trace_entry struct and functions. + + +SOS Trace Module +================ + +The SOS trace module is responsible for: + +- allocating sbuf in sos memory range for each physical CPU, and assign + the gpa of Sbuf to ``per_cpu sbuf[ACRN_TRACE]`` +- create a misc device for each physical CPU +- provide mmap operation to map entire Sbuf to userspace for high + flexible and efficient access. + +On SOS shutdown, the trace module is responsible to remove misc devices, free +SBufs, and set ``per_cpu sbuf[ACRN_TRACE]`` to null. + +ACRNTrace Application +===================== + +ACRNTrace application includes a binary to retrieve trace data from +Sbuf, and Python scripts to convert trace data from raw format into +readable text, and do analysis. + +Figure 2.2 shows the sequence of trace initialization and trace data +collection. With a debug build, trace components are initialized at boot +time. After initialization, HV writes trace event date into sbuf +until sbuf is full, which can happen easily if the ACRNTrace app is not +consuming trace data from Sbuf on SOS user space. + +Once ACRNTrace is launched, for each physical CPU a consumer thread is +created to periodically read RAW trace data from sbuf and write to a +file. + +.. note:: figure is missing + + Figure 2.2 Sequence of trace init and trace data collection + +These are the Python scripts provided: + +- **acrntrace_format.py** converts RAW trace data to human-readable + text offline according to given format; + +- **acrnalyze.py** analyzes trace data (as output by acrntrace) + based on given analyzer filters, such as vm_exit or irq, and generates a + report. + +See :ref:`acrntrace` for details and usage. + +ACRN Log +******** + +acrnlog is a tool used to capture ACRN hypervisor log to files on +SOS filesystem. It can run as an SOS service at boot, capturing two +kinds of logs: + +- Current runtime logs; +- Logs remaining in the buffer, from last crashed running. + +Architectural diagram +===================== + +Similar to the design of ACRN Trace, ACRN Log is built on the top of +Shared Buffer (Sbuf), and consists of three parts from bottom layer +up: + +- **ACRN Log app**: Userland application collecting hypervisor log to + files; +- **SOS ACRN Log Module**: constructs/frees SBufs at reserved memory + area, creates dev for current/last logs, sets up sbuf shared between + SOS and HV, and provides a dev node for the userland app to + retrieve logs +- **ACRN log support in HV**: put logs at specified loglevel to Sbuf. + +.. figure:: images/log-image73.png + :align: center + + Architectural diagram of ACRN Log + + +ACRN log support in Hypervisor +============================== + +To support acrn log, the following adaption was made to hypervisor log +system: + +- log messages with severity level higher than a specified value will + be put into Sbuf when calling logmsg in hypervisor +- allocate sbuf to accommodate early hypervisor logs before SOS + can allocate and set up sbuf + +There are 6 different loglevels, as shown below. The specified +severity loglevel is stored in ``mem_loglevel``, initialized +by :option:`CONFIG_MEM_LOGLEVEL_DEFAULT`. The loglevel can +be set to a new value +at runtime via hypervisor shell command "loglevel". + +.. code-block:: c + + #define LOG_FATAL 1U + #define LOG_ACRN 2U + #define LOG_ERROR 3U + #define LOG_WARNING 4U + #define LOG_INFO 5U + #define LOG_DEBUG 6U + + +The element size of sbuf for logs is fixed at 80 bytes, and the max size +of a single log message is 320 bytes. Log messages with a length between +80 and 320 bytes will be separated into multiple sbuf elements. Log +messages with length larger then 320 will be truncated. + +For security, SOS allocates sbuf in its memory range and assigns it to +the hypervisor. To handle log messages before SOS boots, sbuf for each +physical cpu will be allocated in acrn hypervisor memory range for any +early log entries. Once sbuf in the SOS memory range is allocated and +assigned to hypervisor via hypercall, the Hypervisor logmsg will switch +to use SOS allocated sbuf, early logs will be copied, and early sbuf in +hypervisor memory range will be freed. + +SOS ACRN Log Module +=================== + +To enable retrieving log messages from a crash, 4MB of memory from +0x6DE00000 is reserved for acrn log. This space is further divided into +two each ranges, one for current run and one for last previous run: + +.. figure:: images/log-image59.png + :align: center + + ACRN Log crash log/current log buffers + +On SOS boot, SOS acrnlog module is responsible to: + +- examine if there are log messages remaining from last crashed + run by checking the magic number of each sbuf + +- if there are previous crash logs, construct sbuf and create misc devices for + these last logs + +- construct sbuf in the usable buf range for each physical CPU, + assign the gpa of Sbuf to ``per_cpu sbuf[ACRN_LOG]`` and create a misc + device for each physical CPU + +- the misc devices implement read() file operation to allow + userspace app to read one Sbuf element. + +When checking the validity of sbuf for last logs examination, it sets the +current sbuf with magic number ``0x5aa57aa71aa13aa3``, and changes the +magic number of last sbuf to ``0x5aa57aa71aa13aa2``, to distinguish which is +the current/last. + +On SOS shutdown, the module is responsible to remove misc devices, +free SBufs, and set ``per_cpu sbuf[ACRN_TRACE]`` to null. + +ACRN Log Application +==================== + +ACRNLog application reads log messages from sbuf for each physical +CPU and combines them into log files with log messages in ascending +order by the global sequence number. If the sequence number is not +continuous, a warning of "incontinuous logs" will be inserted. + +To avoid using up storage space, the size of a single log file and +the total number of log files are both limited. By default, log file +size limitation is 1MB and file number limitation is 4. + +If there are last log devices, ACRN log will read out the log +messages, combine them, and save them into last log files. + +See :ref:`acrnlog` for usage details. diff --git a/doc/developer-guides/hld/images/log-image50.png b/doc/developer-guides/hld/images/log-image50.png new file mode 100644 index 0000000000000000000000000000000000000000..e8b28254aa1cb980625d9243d3138107e5cf3608 GIT binary patch literal 43015 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�|KK!lZ=2!GEfih&r&(}F!mKZqa_#acl}Lr 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 P1^@s6bIIEf000tENkl>9^y4+L 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 Y0+cnG(j-#&+W-In07*qoM6N<$g0_S9EC2ui literal 0 HcmV?d00001 diff --git a/doc/developer-guides/hld/images/log-image73.png b/doc/developer-guides/hld/images/log-image73.png new file mode 100644 index 0000000000000000000000000000000000000000..d5d0d661f258e995733b7d38f96de21a5f52bbc6 GIT binary patch literal 34139 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 literal 0 HcmV?d00001