[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 02/12] xen/arm: add cache coloring initialization for domains
Hi Wei, On Mon, Sep 26, 2022 at 8:39 AM Wei Chen <Wei.Chen@xxxxxxx> wrote: > On 2022/8/26 20:51, Carlo Nonato wrote: > > +int domain_coloring_init(struct domain *d, > > + const struct xen_arch_domainconfig *config) > > +{ > > + if ( is_domain_direct_mapped(d) ) > > + { > > + printk(XENLOG_ERR > > + "Can't enable coloring and directmap at the same time for > > %pd\n", > > + d); > > + return -EINVAL; > > + } > > + > > + if ( is_hardware_domain(d) ) > > + { > > + d->arch.colors = dom0_colors; > > + d->arch.num_colors = dom0_num_colors; > > + } > > + else if ( config->num_colors == 0 ) > > + { > > + printk(XENLOG_WARNING > > + "Color config not found for %pd. Using default\n", d); > > + d->arch.colors = xzalloc_array(unsigned int, max_colors); > > + d->arch.num_colors = set_default_domain_colors(d->arch.colors); > > + } > > + else > > + { > > + d->arch.colors = xzalloc_array(unsigned int, config->num_colors); > > + d->arch.num_colors = config->num_colors; > > + if ( config->from_guest ) > > + copy_from_guest(d->arch.colors, config->colors, > > config->num_colors); > > + else > > + memcpy(d->arch.colors, config->colors.p, > > + sizeof(unsigned int) * config->num_colors); > > + } > > + > > + if ( !d->arch.colors ) > > + { > > + printk(XENLOG_ERR "Colors allocation failed for %pd\n", d); > > + return -ENOMEM; > > + } > > + > > + if ( !check_colors(d->arch.colors, d->arch.num_colors) ) > > + { > > If we add xfree(d->arch.colors) here for non-hw domains, is it possible > to make this function have a complete fallback process? And I know > currently, this is handled in domain_coloring_free. Yes, you're right. Added. > Cheers, > Wei Chen Thanks. - Carlo Nonato
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |