When running as a stubdom Xenstore should set the maximum number of
grants needed via a call of xengnttab_set_max_grants(), as otherwise
the number of domains which can be supported will be 128 only (the
default number of grants supported by Mini-OS).
Signed-off-by: Juergen Gross <jgross@suse.com>
---
This is a backport candidate IMO.
---
tools/xenstore/xenstored_domain.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tools/xenstore/xenstored_domain.c b/tools/xenstore/xenstored_domain.c
index 06359503f0..f740aa02f5 100644
--- a/tools/xenstore/xenstored_domain.c
+++ b/tools/xenstore/xenstored_domain.c
@@ -630,6 +630,8 @@ void domain_init(void)
*xgt_handle = xengnttab_open(NULL, 0);
if (*xgt_handle == NULL)
barf_perror("Failed to open connection to gnttab");
+ /* Allow max number of domains for mappings. */
+ xengnttab_set_max_grants(*xgt_handle, DOMID_FIRST_RESERVED);
talloc_set_destructor(xgt_handle, close_xgt_handle);
--
2.26.2
On Thu, Sep 24, 2020 at 04:36:48PM +0200, Juergen Gross wrote: > When running as a stubdom Xenstore should set the maximum number of > grants needed via a call of xengnttab_set_max_grants(), as otherwise > the number of domains which can be supported will be 128 only (the > default number of grants supported by Mini-OS). > > Signed-off-by: Juergen Gross <jgross@suse.com> > --- > This is a backport candidate IMO. > --- > tools/xenstore/xenstored_domain.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/tools/xenstore/xenstored_domain.c b/tools/xenstore/xenstored_domain.c > index 06359503f0..f740aa02f5 100644 > --- a/tools/xenstore/xenstored_domain.c > +++ b/tools/xenstore/xenstored_domain.c > @@ -630,6 +630,8 @@ void domain_init(void) > *xgt_handle = xengnttab_open(NULL, 0); > if (*xgt_handle == NULL) > barf_perror("Failed to open connection to gnttab"); > + /* Allow max number of domains for mappings. */ > + xengnttab_set_max_grants(*xgt_handle, DOMID_FIRST_RESERVED); Why DOMID_FIRST_RESERVED as the count argument? Is the expectation here xenstored maps one grant per domain? Wei. > > talloc_set_destructor(xgt_handle, close_xgt_handle); > > -- > 2.26.2 >
On 30.09.20 17:14, Wei Liu wrote: > On Thu, Sep 24, 2020 at 04:36:48PM +0200, Juergen Gross wrote: >> When running as a stubdom Xenstore should set the maximum number of >> grants needed via a call of xengnttab_set_max_grants(), as otherwise >> the number of domains which can be supported will be 128 only (the >> default number of grants supported by Mini-OS). >> >> Signed-off-by: Juergen Gross <jgross@suse.com> >> --- >> This is a backport candidate IMO. >> --- >> tools/xenstore/xenstored_domain.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/tools/xenstore/xenstored_domain.c b/tools/xenstore/xenstored_domain.c >> index 06359503f0..f740aa02f5 100644 >> --- a/tools/xenstore/xenstored_domain.c >> +++ b/tools/xenstore/xenstored_domain.c >> @@ -630,6 +630,8 @@ void domain_init(void) >> *xgt_handle = xengnttab_open(NULL, 0); >> if (*xgt_handle == NULL) >> barf_perror("Failed to open connection to gnttab"); >> + /* Allow max number of domains for mappings. */ >> + xengnttab_set_max_grants(*xgt_handle, DOMID_FIRST_RESERVED); > > Why DOMID_FIRST_RESERVED as the count argument? Is the expectation here > xenstored maps one grant per domain? Yes. This is the theoretical maximum. Juergen
On Wed, Sep 30, 2020 at 05:23:58PM +0200, Jürgen Groß wrote: > On 30.09.20 17:14, Wei Liu wrote: > > On Thu, Sep 24, 2020 at 04:36:48PM +0200, Juergen Gross wrote: > > > When running as a stubdom Xenstore should set the maximum number of > > > grants needed via a call of xengnttab_set_max_grants(), as otherwise > > > the number of domains which can be supported will be 128 only (the > > > default number of grants supported by Mini-OS). > > > > > > Signed-off-by: Juergen Gross <jgross@suse.com> > > > --- > > > This is a backport candidate IMO. > > > --- > > > tools/xenstore/xenstored_domain.c | 2 ++ > > > 1 file changed, 2 insertions(+) > > > > > > diff --git a/tools/xenstore/xenstored_domain.c b/tools/xenstore/xenstored_domain.c > > > index 06359503f0..f740aa02f5 100644 > > > --- a/tools/xenstore/xenstored_domain.c > > > +++ b/tools/xenstore/xenstored_domain.c > > > @@ -630,6 +630,8 @@ void domain_init(void) > > > *xgt_handle = xengnttab_open(NULL, 0); > > > if (*xgt_handle == NULL) > > > barf_perror("Failed to open connection to gnttab"); > > > + /* Allow max number of domains for mappings. */ > > > + xengnttab_set_max_grants(*xgt_handle, DOMID_FIRST_RESERVED); > > > > Why DOMID_FIRST_RESERVED as the count argument? Is the expectation here > > xenstored maps one grant per domain? > > Yes. This is the theoretical maximum. > In that case: Acked-by: Wei Liu <wl@xen.org> I will also add that information to the commit message. > > Juergen
On 30/09/2020 16:28, Wei Liu wrote: > On Wed, Sep 30, 2020 at 05:23:58PM +0200, Jürgen Groß wrote: >> On 30.09.20 17:14, Wei Liu wrote: >>> On Thu, Sep 24, 2020 at 04:36:48PM +0200, Juergen Gross wrote: >>>> When running as a stubdom Xenstore should set the maximum number of >>>> grants needed via a call of xengnttab_set_max_grants(), as otherwise >>>> the number of domains which can be supported will be 128 only (the >>>> default number of grants supported by Mini-OS). >>>> >>>> Signed-off-by: Juergen Gross <jgross@suse.com> >>>> --- >>>> This is a backport candidate IMO. >>>> --- >>>> tools/xenstore/xenstored_domain.c | 2 ++ >>>> 1 file changed, 2 insertions(+) >>>> >>>> diff --git a/tools/xenstore/xenstored_domain.c b/tools/xenstore/xenstored_domain.c >>>> index 06359503f0..f740aa02f5 100644 >>>> --- a/tools/xenstore/xenstored_domain.c >>>> +++ b/tools/xenstore/xenstored_domain.c >>>> @@ -630,6 +630,8 @@ void domain_init(void) >>>> *xgt_handle = xengnttab_open(NULL, 0); >>>> if (*xgt_handle == NULL) >>>> barf_perror("Failed to open connection to gnttab"); >>>> + /* Allow max number of domains for mappings. */ >>>> + xengnttab_set_max_grants(*xgt_handle, DOMID_FIRST_RESERVED); >>> Why DOMID_FIRST_RESERVED as the count argument? Is the expectation here >>> xenstored maps one grant per domain? >> Yes. This is the theoretical maximum. >> > In that case: > > Acked-by: Wei Liu <wl@xen.org> > > I will also add that information to the commit message. And the comment if possible please. That's where it will be most useful to the next person doing a doubletake at this code. :) ~Andrew
On Wed, Sep 30, 2020 at 04:30:16PM +0100, Andrew Cooper wrote: > On 30/09/2020 16:28, Wei Liu wrote: > > On Wed, Sep 30, 2020 at 05:23:58PM +0200, Jürgen Groß wrote: > >> On 30.09.20 17:14, Wei Liu wrote: > >>> On Thu, Sep 24, 2020 at 04:36:48PM +0200, Juergen Gross wrote: > >>>> When running as a stubdom Xenstore should set the maximum number of > >>>> grants needed via a call of xengnttab_set_max_grants(), as otherwise > >>>> the number of domains which can be supported will be 128 only (the > >>>> default number of grants supported by Mini-OS). > >>>> > >>>> Signed-off-by: Juergen Gross <jgross@suse.com> > >>>> --- > >>>> This is a backport candidate IMO. > >>>> --- > >>>> tools/xenstore/xenstored_domain.c | 2 ++ > >>>> 1 file changed, 2 insertions(+) > >>>> > >>>> diff --git a/tools/xenstore/xenstored_domain.c b/tools/xenstore/xenstored_domain.c > >>>> index 06359503f0..f740aa02f5 100644 > >>>> --- a/tools/xenstore/xenstored_domain.c > >>>> +++ b/tools/xenstore/xenstored_domain.c > >>>> @@ -630,6 +630,8 @@ void domain_init(void) > >>>> *xgt_handle = xengnttab_open(NULL, 0); > >>>> if (*xgt_handle == NULL) > >>>> barf_perror("Failed to open connection to gnttab"); > >>>> + /* Allow max number of domains for mappings. */ > >>>> + xengnttab_set_max_grants(*xgt_handle, DOMID_FIRST_RESERVED); > >>> Why DOMID_FIRST_RESERVED as the count argument? Is the expectation here > >>> xenstored maps one grant per domain? > >> Yes. This is the theoretical maximum. > >> > > In that case: > > > > Acked-by: Wei Liu <wl@xen.org> > > > > I will also add that information to the commit message. > > And the comment if possible please. That's where it will be most useful > to the next person doing a doubletake at this code. :) Yes sure. Wei. > > ~Andrew
© 2016 - 2024 Red Hat, Inc.