Re: [dpdk-dev]   *rte_vhost_rx_queue_count* should be protected by vq->access_lock

2019-08-15 Thread He Peng
Hi, Would you please provide  a list of impacted APIs, thus we can check if our code has further issues. b.t.w, we are now using dpdk 18.11. Thanks. 2019年8月14日 下午11:09,Tiwei Bie 写道: On Wed, Aug 14, 2019 at 03:31:09AM +, He Peng wrote: Hi, We found that *rte_vhost_rx_queue_count

[dpdk-dev] *rte_vhost_rx_queue_count* should be protected by vq->access_lock

2019-08-13 Thread He Peng
Hi, We found that *rte_vhost_rx_queue_count* is not protected by vq->access_lock, and the access to vq->avail->idx is not thread-safe, since at the same time, the vq->avail  might be  set by *vring_invalidate* when some vhost-user messages arrived, such as VRING_SET_ADDRESS, VRING_SET_MEM_TAB

[dpdk-dev] *mlx5_get_ifname* should be protected by lock

2019-08-04 Thread He Peng
Hi,  In dpdk 16.11, most of mlnx device APIs except RX/TX are protected by a private lock. In DPDK 18.11, these locks are removed, from the code it seems this is due to all APIs will create a disposable  socket and the socket will be used to set/get specific device features, and will be close

Re: [dpdk-dev]   How *rte_zmalloc_socket* ensure that the memory is zero'd ?

2019-07-16 Thread He Peng
2019年7月16日 下午10:19,He Peng 写道: Hi, 2019年7月16日 下午9:51,Stephen Hemminger 写道: On Wed, 17 Jul 2019 02:26:57 GMT He Peng wrote: Hi, In file dpdk/lib/librte_eal/common/rte_malloc.c: /* * Allocate memory on default heap. */ void * rte_malloc(const char *type, size_t size, unsigned

Re: [dpdk-dev]   How *rte_zmalloc_socket* ensure that the memory is zero'd ?

2019-07-16 Thread He Peng
Hi, 2019年7月16日 下午9:51,Stephen Hemminger 写道: On Wed, 17 Jul 2019 02:26:57 GMT He Peng wrote: Hi, In file dpdk/lib/librte_eal/common/rte_malloc.c: /* * Allocate memory on default heap. */ void * rte_malloc(const char *type, size_t size, unsigned align) {   return rte_malloc_socket(type

[dpdk-dev] How *rte_zmalloc_socket* ensure that the memory is zero'd ?

2019-07-16 Thread He Peng
Hi, In file dpdk/lib/librte_eal/common/rte_malloc.c: /* * Allocate memory on default heap. */ void * rte_malloc(const char *type, size_t size, unsigned align) {   return rte_malloc_socket(type, size, align, SOCKET_ID_ANY); } /* * Allocate zero'd memory on specified heap. */ void * rte_zmalloc_s

[dpdk-dev] Intel I350 fails to work with DPDK

2015-07-26 Thread he peng
Hi, Sabu and Bruce: I saw your post in the mailing list about I350 fails to send packets, however it is posted about one year ago. Now we have encountered the same issue. We are now building a forwarding device which forwards packets between 2 I350 ports, and we observe that the