mirror of
https://github.com/genodelabs/genode.git
synced 2025-01-29 15:44:02 +00:00
bfe88307de
This patch changes core's TRACE service to expose trace subjects only if their PD label matches the label of the TRACE monitor. Hence, by default, a trace monitor can only observe itself and its child components. Only if the trace monitor's parent rewrites the trace-session's label, the view of trace monitor can become broader. For example, when rewriting the trace label to an empty string "", the trace monitor becomes able to observe the sibling components hosted in the same init instance as the trace monitor. To grant a trace session the special privilege of obtaining a global system view (including the kernel's trace subjects), the top-level init has to rewrite the session's label to an empty string. At core, this specific label "init -> " is handled as a special case that discharges the filtering/namespacing of trace subjects. Note that the trace-subject label as reported as subject info is now given relative to the label of the trace session. As a nice side effect of this change, the pkg/test-trace_logger works now when executed by the depot_autopilot as well as via the test.run script. Issue #847
This is the generic Genode base system, which consists of two parts: :_Core_: is the root of the Genode component tree. It provides abstractions for the lowest-level hardware resources such as RAM, ROM, CPU, and device access. All generic parts of core can be found here. For kernel-specific parts, refer to the appropriate 'base-<kernel>' directory. :_Base libraries and interfaces: that are used by each Genode component to interact with other components. This is the glue that holds everything together. Depending on the used kernel, core may export information about the hardware platform as a ROM called 'platform_info'. For example, if the ACPI RSDT and XSDT physical pointer are reported by the used kernel and/or bootloader, core provides this information in the ROM as follows. !<platform_info> ! <acpi revision="2" rsdt="0x1fe93074" xsdt="0x1fe930e8"/> ! <boot> ! <framebuffer phys="0x7300000" width="1024" height="768" bpp="32"/> ! </boot> !</platform_info> If the graphics device is initialised and can be directly used by a framebuffer driver, core provides the physical pointer to the framebuffer, the resolution, and color depth in bits.