Re: [PATCH v3] xen/evtchn: Introduce new IOCTL to bind static evtchn

From: Stefano Stabellini
Date: Wed Jul 19 2023 - 20:22:52 EST


On Tue, 18 Jul 2023, Oleksandr Tyshchenko wrote:
> On 18.07.23 14:31, Rahul Singh wrote:
>
>
> Hello Rahul
>
>
> > Xen 4.17 supports the creation of static evtchns. To allow user space
> > application to bind static evtchns introduce new ioctl
> > "IOCTL_EVTCHN_BIND_STATIC". Existing IOCTL doing more than binding
> > that’s why we need to introduce the new IOCTL to only bind the static
> > event channels.
> >
> > Static evtchns to be available for use during the lifetime of the
> > guest. When the application exits, __unbind_from_irq() ends up being
> > called from release() file operations because of that static evtchns
> > are getting closed. To avoid closing the static event channel, add the
> > new bool variable "is_static" in "struct irq_info" to mark the event
> > channel static when creating the event channel to avoid closing the
> > static evtchn.
> >
> > Also, take this opportunity to remove the open-coded version of the
> > evtchn close in drivers/xen/evtchn.c file and use xen_evtchn_close().
> >
> > Signed-off-by: Rahul Singh <rahul.singh@xxxxxxx>
> > ---
> > v3:
> > * Remove the open-coded version of the evtchn close in drivers/xen/evtchn.c
>
> Thanks!
>
> Looks like there is one unmentioned change in change-log since v2:
> * Make sure that evtchn hasn't been added yet before binding it in
> evtchn_ioctl():case IOCTL_EVTCHN_BIND_STATIC
>
> Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@xxxxxxxx>

Acked-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>