@@ -23,6 +23,16 @@ config GRANT_TABLE
If unsure, say Y.
+config EVTCHN_FIFO
+ bool "Event Channel Fifo support" if EXPERT
+ default y
+ help
+ The Event channel Fifo extends support for event channels
+ beyond 1024 event channels for 32-bit guests and 4096 for
+ 64-bit guests.
+
+ If unsure, say Y.
+
config PDX_COMPRESSION
bool "PDX (Page inDeX) compression" if EXPERT && !X86 && !RISCV
default ARM || PPC
@@ -13,7 +13,7 @@ obj-$(CONFIG_IOREQ_SERVER) += dm.o
obj-y += domain.o
obj-y += event_2l.o
obj-y += event_channel.o
-obj-y += event_fifo.o
+obj-$(CONFIG_EVTCHN_FIFO) += event_fifo.o
obj-$(CONFIG_GRANT_TABLE) += grant_table.o
obj-y += guestcopy.o
obj-y += gzip/
@@ -45,12 +45,27 @@ void evtchn_2l_init(struct domain *d);
/* FIFO */
+#ifdef CONFIG_EVTCHN_FIFO
struct evtchn_init_control;
struct evtchn_expand_array;
int evtchn_fifo_init_control(struct evtchn_init_control *init_control);
int evtchn_fifo_expand_array(const struct evtchn_expand_array *expand_array);
void evtchn_fifo_destroy(struct domain *d);
+#else
+static inline int evtchn_fifo_init_control(struct evtchn_init_control *init_control)
+{
+ return -EOPNOTSUPP;
+}
+static inline int evtchn_fifo_expand_array(const struct evtchn_expand_array *expand_array)
+{
+ return -EOPNOTSUPP;
+}
+static inline void evtchn_fifo_destroy(struct domain *d)
+{
+ return;
+}
+#endif /* CONFIG_EVTCHN_FIFO */
/*
* Local variables:
Evtchn fifos are not needed on smaller systems; the older interface is lightweight and sufficient. Make it possible to disable evtchn fifo. Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>