mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
dom0less: Allow arch_parse_dom0less_node() to be fallible
Let the function return an errno, so fallible bindings are not precluded. Signed-off-by: Alejandro Vallejo <alejandro.garciavallejo@amd.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
This commit is contained in:
1 parent
755403bb7e
commit
3743746459
3 files changed
+9
-6
No files matched your search
@@ -272,8 +272,8 @@ int __init init_vuart(struct domain *d, struct kernel_info *kinfo,
|
||||
return rc;
|
||||
}
|
||||
|
||||
void __init arch_parse_dom0less_node(struct dt_device_node *node,
|
||||
struct boot_domain *bd)
|
||||
int __init arch_parse_dom0less_node(struct dt_device_node *node,
|
||||
struct boot_domain *bd)
|
||||
{
|
||||
struct xen_domctl_createdomain *d_cfg = &bd->create_cfg;
|
||||
unsigned int flags = bd->create_flags;
|
||||
@@ -354,6 +354,8 @@ void __init arch_parse_dom0less_node(struct dt_device_node *node,
|
||||
if ( !val )
|
||||
d_cfg->flags &= ~XEN_DOMCTL_CDF_trap_unmapped_accesses;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int __init init_intc_phandle(struct kernel_info *kinfo, const char *name,
|
||||
|
||||
@@ -960,7 +960,8 @@ void __init create_domUs(void)
|
||||
panic("'llc-colors' found, but LLC coloring is disabled\n");
|
||||
#endif
|
||||
|
||||
arch_parse_dom0less_node(node, &ki.bd);
|
||||
if ( (rc = arch_parse_dom0less_node(node, &ki.bd)) )
|
||||
panic("error parsing arch-specific dom0less props (rc=%d)", rc);
|
||||
|
||||
/*
|
||||
* The variable max_init_domid is initialized with zero, so here it's
|
||||
|
||||
@@ -9,7 +9,7 @@ struct domain;
|
||||
|
||||
#ifdef CONFIG_DOM0LESS_BOOT
|
||||
|
||||
struct xen_domctl_createdomain;
|
||||
struct boot_domain;
|
||||
struct dt_device_node;
|
||||
struct kernel_info;
|
||||
|
||||
@@ -45,8 +45,8 @@ void create_domUs(void);
|
||||
bool is_dom0less_mode(void);
|
||||
void set_xs_domain(struct domain *d);
|
||||
|
||||
void arch_parse_dom0less_node(struct dt_device_node *node,
|
||||
struct boot_domain *bd);
|
||||
int arch_parse_dom0less_node(struct dt_device_node *node,
|
||||
struct boot_domain *bd);
|
||||
|
||||
int init_vuart(struct domain *d, struct kernel_info *kinfo,
|
||||
const struct dt_device_node *node);
|
||||
|
||||