diff mbox series

[v3,3/7] xen/evtchn: restrict the maximum number of evtchn supported for domUs

Message ID 4ae16201df27aee274a3d740128812b118c252b3.1662023183.git.rahul.singh@arm.com (mailing list archive)
State Superseded
Headers show
Series xen/evtchn: implement static event channel signaling | expand

Commit Message

Rahul Singh Sept. 1, 2022, 9:13 a.m. UTC
Restrict the maximum number of evtchn supported for domUs to avoid
allocating a large amount of memory in Xen.

Set the default value of max_evtchn_port to 1023. The value of 1023
should be sufficient for domUs guests because on ARM we don't bind
physical interrupts to event channels. The only use of the evtchn port
is inter-domain communications.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
---
Changes in v3:
 - added in commit msg why we set the max_evtchn_port value to 1023.
 - added the comment in code also why we set the max_evtchn_port to 1023
 - remove the define and set the value to 1023 in code directly.
Changes in v2:
 - new patch in the version
---
 xen/arch/arm/domain_build.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

Comments

Michal Orzel Sept. 1, 2022, 1:53 p.m. UTC | #1
Hi Rahul,

On 01/09/2022 11:13, Rahul Singh wrote:
> 
> Restrict the maximum number of evtchn supported for domUs to avoid
> allocating a large amount of memory in Xen.
> 
> Set the default value of max_evtchn_port to 1023. The value of 1023
> should be sufficient for domUs guests because on ARM we don't bind
> physical interrupts to event channels. The only use of the evtchn port
> is inter-domain communications.
Following the previous discussion, I think the only missing piece is
an explanation that 1023 was chose to follow the default behavior of libxl.

Apart from that:
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

~Michal
Julien Grall Sept. 1, 2022, 5:41 p.m. UTC | #2
Hi,

On 01/09/2022 14:53, Michal Orzel wrote:
> On 01/09/2022 11:13, Rahul Singh wrote:
>>
>> Restrict the maximum number of evtchn supported for domUs to avoid
>> allocating a large amount of memory in Xen.
>>
>> Set the default value of max_evtchn_port to 1023. The value of 1023
>> should be sufficient for domUs guests because on ARM we don't bind
>> physical interrupts to event channels. The only use of the evtchn port
>> is inter-domain communications.
> Following the previous discussion, I think the only missing piece is
> an explanation that 1023 was chose to follow the default behavior of libxl.

+1. The current explanation only justify why we haven't added a 
device-tree property to change the default value.

> 
> Apart from that:
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Cheers,
diff mbox series

Patch

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 3fd1186b53..fde133cd94 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -3277,7 +3277,13 @@  void __init create_domUs(void)
         struct xen_domctl_createdomain d_cfg = {
             .arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE,
             .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
-            .max_evtchn_port = -1,
+            /*
+             * The default of 1023 should be sufficient for domUs guests
+             * because on ARM we don't bind physical interrupts to event
+             * channels. The only use of the evtchn port is inter-domain
+             * communications.
+             */
+            .max_evtchn_port = 1023,
             .max_grant_frames = -1,
             .max_maptrack_frames = -1,
             .grant_opts = XEN_DOMCTL_GRANT_version(opt_gnttab_max_version),