From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id CF69A293C for ; Wed, 25 Jan 2017 13:15:00 +0100 (CET) Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP; 25 Jan 2017 04:14:59 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,283,1477983600"; d="scan'208";a="57045480" Received: from bricha3-mobl3.ger.corp.intel.com ([10.237.221.61]) by orsmga005.jf.intel.com with SMTP; 25 Jan 2017 04:14:57 -0800 Received: by (sSMTP sendmail emulation); Wed, 25 Jan 2017 12:14:56 +0000 Date: Wed, 25 Jan 2017 12:14:56 +0000 From: Bruce Richardson To: dev@dpdk.org Message-ID: <20170125121456.GA24344@bricha3-MOBL3.ger.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Organization: Intel Research and =?iso-8859-1?Q?De=ACvel?= =?iso-8859-1?Q?opment?= Ireland Ltd. User-Agent: Mutt/1.7.1 (2016-10-04) Subject: [dpdk-dev] rte_ring features in use (or not) X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Jan 2017 12:15:01 -0000 Hi all, while looking at the rte_ring code, I'm wondering if we can simplify that a bit by removing some of the code it in that may not be used. Specifically: * Does anyone use the NIC stats functionality for debugging? I've certainly never seen it used, and it's presence makes the rest less readable. Can it be dropped? * RTE_RING_PAUSE_REP_COUNT is set to be disabled at build time, and so does anyone actually use this? Can it be dropped? * Who uses the watermarks feature as is? I know we have a sample app that uses it, but there are better ways I think to achieve the same goal while simplifying the ring implementation. Rather than have a set watermark on enqueue, have both enqueue and dequeue functions return the number of free or used slots available in the ring (in case of enqueue, how many free there are, in case of dequeue, how many items are available). Easier to implement and far more useful to the app. Thoughts? Regards, /Bruce