On 18.03.2016 12:46, Yuanhan Liu wrote: > On Fri, Mar 18, 2016 at 10:34:56AM +0100, Thomas Monjalon wrote: >> 2016-03-18 17:16, Yuanhan Liu: >>> On Fri, Mar 18, 2016 at 09:09:04AM +0100, Thomas Monjalon wrote: >>>> 2016-03-18 16:00, Yuanhan Liu: >>>>> On Thu, Mar 17, 2016 at 04:29:32PM +0100, Thomas Monjalon wrote: >>>>>> 2016-02-24 14:47, Ilya Maximets: >>>>>>> Implementation of rte_vhost_enqueue_burst() based on lockless >>>>>>> ring-buffer >>>>>>> algorithm and contains almost all to be thread-safe, but it's not. >>>>>>> >>>>>>> This set adds required changes. >>>>>>> >>>>>>> First patch in set is a standalone patch that fixes many times discussed >>>>>>> issue with barriers on different architectures. >>>>>>> >>>>>>> Second and third adds fixes to make rte_vhost_enqueue_burst thread safe. >>>>>> >>>>>> My understanding is that we do not want to pollute Rx/Tx with locks. >>>>>> >>>>>> Huawei, Yuanhan, Bruce, do you confirm? >>>>> >>>>> Huawei would like to do that, and I'm behind that. Let's do it. >>>> >>>> I'm not sure to understand. What do you want to do exactly? >>> >>> I was thinking we are on the same page :( >> >> Yes we are on the same page. >> But it's better to make things explicit. >> >> There should be no lock in Rx/Tx drivers (including vhost). >> The locking must be done by the caller (application level). > > Yeah, that's why Huawei made the proposal and the patch. > >> That's why this series "Thread safe rte_vhost_enqueue_burst" is rejected.
Hi all. And what about first patch of this series: "vhost: use SMP barriers instead of compiler ones." ? It's not about thread safety in terms of 'lockless'. It is the standalone patch that fixes many times discussed issue with barriers on arm. Best regards, Ilya Maximets. >> >>> "do not want to pollute Rx/Tx with locks" == "remove lockless Rx/Tx, the >>> proposal from Huawei", right? >>> >>> In another way, I'm behind the following patch from Huawei: >>> >>> http://dpdk.org/dev/patchwork/patch/9740/ >> >> The patch "vhost: remove lockless enqueue to the virtio ring" must me >> reworked in 2 patches: >> 1/ announce API change > > That was my concern, and agreed we need that. > >> 2/ remove locks >> >> Please avoid talking about removing "lockless" when actually removing locks. > > Sorry, my bad. > > --yliu > >