[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCHv1] xen: increase default number of PIRQs for hardware domains
On Wed, Dec 03, 2014 at 04:04:20PM +0000, David Vrabel wrote: > The default limit for the number of PIRQs for hardware domains (dom0) > is not sufficient for some (x86) systems. > > Since the pirq structures are individually and dynamically allocated, > the limit for hardware domains may be increased to the number of > possible IRQs. Why not also expand the number for the guest? > > The extra_guest_irqs command line option now only allows changes to > the domU value. Any argument for dom0 is ignored. > > Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx> > --- > docs/misc/xen-command-line.markdown | 11 ++++------- > xen/common/domain.c | 7 +------ > 2 files changed, 5 insertions(+), 13 deletions(-) > > diff --git a/docs/misc/xen-command-line.markdown > b/docs/misc/xen-command-line.markdown > index 0866df2..d352031 100644 > --- a/docs/misc/xen-command-line.markdown > +++ b/docs/misc/xen-command-line.markdown > @@ -594,15 +594,12 @@ except for debugging purposes. > Force or disable use of EFI runtime services. > > ### extra\_guest\_irqs > -> `= [<domU number>][,<dom0 number>]` > +> `= [<number>]` > > -> Default: `32,256` > +> Default: `32` > > -Change the number of PIRQs available for guests. The optional first number > is > -common for all domUs, while the optional second number (preceded by a comma) > -is for dom0. Changing the setting for domU has no impact on dom0 and vice > -versa. For example to change dom0 without changing domU, use > -`extra_guest_irqs=,512` > +Change the number of PIRQs available for guests. This limit does not > +apply to hardware domains (dom0). > > ### flask\_enabled > > `= <integer>` > diff --git a/xen/common/domain.c b/xen/common/domain.c > index 4a62c1d..a88d829 100644 > --- a/xen/common/domain.c > +++ b/xen/common/domain.c > @@ -231,14 +231,11 @@ static int late_hwdom_init(struct domain *d) > #endif > } > > -static unsigned int __read_mostly extra_dom0_irqs = 256; > static unsigned int __read_mostly extra_domU_irqs = 32; > static void __init parse_extra_guest_irqs(const char *s) > { > if ( isdigit(*s) ) > extra_domU_irqs = simple_strtoul(s, &s, 0); > - if ( *s == ',' && isdigit(*++s) ) > - extra_dom0_irqs = simple_strtoul(s, &s, 0); > } > custom_param("extra_guest_irqs", parse_extra_guest_irqs); > > @@ -324,10 +321,8 @@ struct domain *domain_create( > atomic_inc(&d->pause_count); > > if ( !is_hardware_domain(d) ) > - d->nr_pirqs = nr_static_irqs + extra_domU_irqs; > + d->nr_pirqs = min(nr_static_irqs + extra_domU_irqs, nr_irqs); > else > - d->nr_pirqs = nr_static_irqs + extra_dom0_irqs; > - if ( d->nr_pirqs > nr_irqs ) > d->nr_pirqs = nr_irqs; > > radix_tree_init(&d->pirq_tree); > -- > 1.7.10.4 > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@xxxxxxxxxxxxx > http://lists.xen.org/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |