Hi Thomas , > -----Original Message----- > From: Thomas Monjalon [mailto:tho...@monjalon.net] > Sent: Wednesday, March 28, 2018 12:34 AM > To: Burakov, Anatoly > Cc: dev@dpdk.org; Tan, Jianfeng; Ananyev, Konstantin; Van Haaren, Harry > Subject: Re: [dpdk-dev] [PATCH v6 2/2] eal: add asynchronous request API to > DPDK IPC > > 27/03/2018 15:59, Anatoly Burakov: > > Under the hood, we create a separate thread to deal with replies to > > asynchronous requests, that will just wait to be notified by the > > main thread, or woken up on a timer. > > I really don't like that a library is creating a thread. > We don't even know where the thread is created (which core). > Can it be a rte_service? or in the interrupt thread?
Agree that we'd better not adding so many threads in a library. I was considering to merge all the threads into the interrupt thread, however, we don't have an interrupt thread in freebsd. Further, we don't implement alarm API in freebsd. That's why I tend to current implementation, and optimize it later. For rte_service, it may be not a good idea to reply on it as it needs explicit API calls to setup. > > > > --- a/lib/librte_eal/rte_eal_version.map > > +++ b/lib/librte_eal/rte_eal_version.map > > @@ -225,6 +225,7 @@ EXPERIMENTAL { > > rte_mp_action_unregister; > > rte_mp_sendmsg; > > rte_mp_request; > > + rte_mp_request_async; > > So there is rte_mp_request and rte_mp_request_async? > You should rename rte_mp_request, I guess. +1. Thanks, Jianfeng > > > rte_mp_reply; > > rte_service_attr_get; > > rte_service_attr_reset_all; > > > >