From: Pallavi Kadam <pallavi.kadam@intel.com>
To: dev@dpdk.org, thomas@monjalon.net
Cc: ranjit.menon@intel.com, dmitry.kozliuk@gmail.com,
Narcisa.Vasile@microsoft.com, talshn@nvidia.com,
pallavi.kadam@intel.com
Subject: [dpdk-dev] [PATCH v2] eal/windows: add interrupt functions stub
Date: Mon, 14 Dec 2020 16:26:22 -0800 [thread overview]
Message-ID: <20201215002622.168-1-pallavi.kadam@intel.com> (raw)
In-Reply-To: <20201211002607.8240-1-pallavi.kadam@intel.com>
Add some missing interrupt implementations on Windows.
Also add respective functions to export file.
Signed-off-by: Tal Shnaiderman <talshn@nvidia.com>
Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com>
Reviewed-by: Ranjit Menon <ranjit.menon@intel.com>
Acked-by: Narcisa Vasile <navasile@linux.microsoft.com>
v2 changes:
Add remaining interrupt APIs (Dmitry Kozlyuk)
---
lib/librte_eal/rte_eal_exports.def | 16 +++
lib/librte_eal/windows/eal_interrupts.c | 126 ++++++++++++++++++++++++
2 files changed, 142 insertions(+)
diff --git a/lib/librte_eal/rte_eal_exports.def b/lib/librte_eal/rte_eal_exports.def
index 6a6be1cfa..dd8398f88 100644
--- a/lib/librte_eal/rte_eal_exports.def
+++ b/lib/librte_eal/rte_eal_exports.def
@@ -56,6 +56,9 @@ EXPORTS
rte_eal_tailq_register
rte_eal_using_phys_addrs
rte_eal_wait_lcore
+ rte_epoll_ctl
+ rte_epoll_wait
+ rte_epoll_wait_interruptible
rte_exit
rte_free
rte_get_main_lcore
@@ -63,7 +66,20 @@ EXPORTS
rte_get_tsc_hz
rte_hexdump
rte_hypervisor_get
+ rte_intr_ack
+ rte_intr_allow_others
+ rte_intr_callback_register
+ rte_intr_callback_unregister
+ rte_intr_callback_unregister_pending
+ rte_intr_cap_multiple
+ rte_intr_disable
+ rte_intr_dp_is_en
+ rte_intr_efd_disable
+ rte_intr_efd_enable
+ rte_intr_enable
+ rte_intr_free_epoll_fd
rte_intr_rx_ctl
+ rte_intr_tls_epfd
rte_lcore_count
rte_lcore_has_role
rte_lcore_index
diff --git a/lib/librte_eal/windows/eal_interrupts.c b/lib/librte_eal/windows/eal_interrupts.c
index 6c64a48f3..67928b46d 100644
--- a/lib/librte_eal/windows/eal_interrupts.c
+++ b/lib/librte_eal/windows/eal_interrupts.c
@@ -105,3 +105,129 @@ eal_intr_thread_schedule(void (*func)(void *arg), void *arg)
return 0;
}
+
+int
+rte_intr_callback_register(
+ __rte_unused const struct rte_intr_handle *intr_handle,
+ __rte_unused rte_intr_callback_fn cb, __rte_unused void *cb_arg)
+{
+ return -ENOTSUP;
+}
+
+int
+rte_intr_callback_unregister_pending(
+ __rte_unused const struct rte_intr_handle *intr_handle,
+ __rte_unused rte_intr_callback_fn cb_fn, __rte_unused void *cb_arg,
+ __rte_unused rte_intr_unregister_callback_fn ucb_fn)
+{
+ return -ENOTSUP;
+}
+
+int
+rte_intr_callback_unregister(
+ __rte_unused const struct rte_intr_handle *intr_handle,
+ __rte_unused rte_intr_callback_fn cb_fn, __rte_unused void *cb_arg)
+{
+ return 0;
+}
+
+int
+rte_intr_enable(__rte_unused const struct rte_intr_handle *intr_handle)
+{
+ return -ENOTSUP;
+}
+
+int
+rte_intr_ack(__rte_unused const struct rte_intr_handle *intr_handle)
+{
+ return -ENOTSUP;
+}
+
+int
+rte_intr_disable(__rte_unused const struct rte_intr_handle *intr_handle)
+{
+ return -ENOTSUP;
+}
+
+int
+rte_intr_efd_enable(struct rte_intr_handle *intr_handle, uint32_t nb_efd)
+{
+ RTE_SET_USED(intr_handle);
+ RTE_SET_USED(nb_efd);
+
+ return 0;
+}
+
+void
+rte_intr_efd_disable(struct rte_intr_handle *intr_handle)
+{
+ RTE_SET_USED(intr_handle);
+}
+
+int
+rte_intr_dp_is_en(struct rte_intr_handle *intr_handle)
+{
+ RTE_SET_USED(intr_handle);
+ return 0;
+}
+
+int
+rte_intr_allow_others(struct rte_intr_handle *intr_handle)
+{
+ RTE_SET_USED(intr_handle);
+ return 1;
+}
+
+int
+rte_intr_cap_multiple(struct rte_intr_handle *intr_handle)
+{
+ RTE_SET_USED(intr_handle);
+ return 0;
+}
+
+int
+rte_epoll_wait(int epfd, struct rte_epoll_event *events,
+ int maxevents, int timeout)
+{
+ RTE_SET_USED(epfd);
+ RTE_SET_USED(events);
+ RTE_SET_USED(maxevents);
+ RTE_SET_USED(timeout);
+
+ return -ENOTSUP;
+}
+
+int
+rte_epoll_wait_interruptible(int epfd, struct rte_epoll_event *events,
+ int maxevents, int timeout)
+{
+ RTE_SET_USED(epfd);
+ RTE_SET_USED(events);
+ RTE_SET_USED(maxevents);
+ RTE_SET_USED(timeout);
+
+ return -ENOTSUP;
+}
+
+int
+rte_epoll_ctl(int epfd, int op, int fd, struct rte_epoll_event *event)
+{
+ RTE_SET_USED(epfd);
+ RTE_SET_USED(op);
+ RTE_SET_USED(fd);
+ RTE_SET_USED(event);
+
+ return -ENOTSUP;
+}
+
+int
+rte_intr_tls_epfd(void)
+{
+ return -ENOTSUP;
+}
+
+void
+rte_intr_free_epoll_fd(struct rte_intr_handle *intr_handle)
+{
+ RTE_SET_USED(intr_handle);
+}
--
2.18.0.windows.1
next prev parent reply other threads:[~2020-12-15 0:33 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-11 0:26 [dpdk-dev] [PATCH] eal/windows: add interrupt functions stub Pallavi Kadam
2020-12-11 19:53 ` Narcisa Ana Maria Vasile
2020-12-11 21:07 ` Dmitry Kozlyuk
2020-12-15 0:38 ` Kadam, Pallavi
2020-12-15 0:26 ` Pallavi Kadam [this message]
2020-12-15 22:39 ` [dpdk-dev] [PATCH v2] " Dmitry Kozlyuk
2021-01-05 21:39 ` Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201215002622.168-1-pallavi.kadam@intel.com \
--to=pallavi.kadam@intel.com \
--cc=Narcisa.Vasile@microsoft.com \
--cc=dev@dpdk.org \
--cc=dmitry.kozliuk@gmail.com \
--cc=ranjit.menon@intel.com \
--cc=talshn@nvidia.com \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.