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. > > > "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