diff --git a/repos/os/include/os/session_policy.h b/repos/os/include/os/session_policy.h index 063aebbd64..8c5bd02f7f 100644 --- a/repos/os/include/os/session_policy.h +++ b/repos/os/include/os/session_policy.h @@ -211,9 +211,7 @@ class Genode::Session_policy : public Xml_node * Constructor * * \param label label used as the selector of a policy - * \param config XML node that contains the policies as sub nodes, - * using the component's top-level config node by - * default + * \param config XML node that contains the policies as sub nodes * * \throw No_policy_defined the server configuration has no * policy defined for the specified label @@ -227,11 +225,24 @@ class Genode::Session_policy : public Xml_node * with the longest label is selected. */ template - explicit Session_policy(String const &label, - Xml_node config = Genode::config()->xml_node()) + Session_policy(String const &label, Xml_node config) : Xml_node(_query_policy(label, config)) { } + + /** + * Constructor + * + * \param label label used as the selector of a policy + * + * \deprecated use constructor with explicit 'config' argument + */ + template explicit Session_policy(String const &label) __attribute__((deprecated)); }; +template Genode::Session_policy::Session_policy(String const &label) +: + Xml_node(_query_policy(label, Genode::config()->xml_node())) +{ } + #endif /* _INCLUDE__OS__SESSION_POLICY_H_ */ diff --git a/repos/os/src/drivers/platform/spec/x86/pci_session_component.h b/repos/os/src/drivers/platform/spec/x86/pci_session_component.h index 65eee1ea23..bb6ef876df 100644 --- a/repos/os/src/drivers/platform/spec/x86/pci_session_component.h +++ b/repos/os/src/drivers/platform/spec/x86/pci_session_component.h @@ -205,7 +205,7 @@ class Platform::Session_component : public Genode::Rpc_object Genode::Region_map &_local_rm; Genode::Heap _md_alloc; Genode::Session_label const _label; - Genode::Session_policy const _policy { _label }; + Genode::Session_policy const _policy { _label, _config.xml() }; Genode::List _device_list; Platform::Pci_buses &_pci_bus; Genode::Heap &_global_heap;