From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 682EF9AAC for ; Wed, 11 Feb 2015 14:07:47 +0100 (CET) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga103.fm.intel.com with ESMTP; 11 Feb 2015 05:00:32 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.09,558,1418112000"; d="scan'208";a="676318020" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by fmsmga002.fm.intel.com with ESMTP; 11 Feb 2015 05:07:36 -0800 Received: from sivswdev02.ir.intel.com (sivswdev02.ir.intel.com [10.237.217.46]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id t1BD7aQs031666 for ; Wed, 11 Feb 2015 13:07:36 GMT Received: from sivswdev02.ir.intel.com (localhost [127.0.0.1]) by sivswdev02.ir.intel.com with ESMTP id t1BD7ak3023958 for ; Wed, 11 Feb 2015 13:07:36 GMT Received: (from smonroy@localhost) by sivswdev02.ir.intel.com with id t1BD7Zs0023954 for dev@dpdk.org; Wed, 11 Feb 2015 13:07:35 GMT From: Sergio Gonzalez Monroy To: dev@dpdk.org Date: Wed, 11 Feb 2015 13:07:30 +0000 Message-Id: <1423660055-23920-1-git-send-email-sergio.gonzalez.monroy@intel.com> X-Mailer: git-send-email 1.8.5.4 In-Reply-To: <1423235164-3808-1-git-send-email-sergio.gonzalez.monroy@intel.com> References: <1423235164-3808-1-git-send-email-sergio.gonzalez.monroy@intel.com> Subject: [dpdk-dev] [PATCH v4 0/5] New Reorder Library X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Feb 2015 13:07:48 -0000 This series introduces the new reorder library along with unit tests, sample app and a new entry in the programmers guide describing the library. The library provides reordering of mbufs based on their sequence number. As mention in the patch describing the library, one use case is the packet distributor. The distributor receives packets, assigns them a sequence number and sends them to the workers. The workers process those packets and return them to the distributor. The distributor collects out-of-order packets from the workers and uses this library to reorder the packets based on the sequence number they were assigned. v4: - add missing version.map and related versioning macros v3: - fix copyright date - add option to sample app to disable reordering - add packet ordering sample guide entry v2: - add programmers guide entry describing the library - use malloc instead of memzone to allocate memory - modify create and init implementation, init takes a reorder buffer as input and create reserves memory and call init. - update unit tests Sergio Gonzalez Monroy (5): reorder: new reorder library app: New reorder unit test examples: new sample app packet_ordering doc: new reorder library description doc: new packet ordering app description app/test/Makefile | 2 + app/test/test_reorder.c | 393 ++++++++++++++ config/common_bsdapp | 5 + config/common_linuxapp | 5 + doc/guides/prog_guide/index.rst | 1 + doc/guides/prog_guide/reorder_lib.rst | 115 ++++ doc/guides/sample_app_ug/index.rst | 1 + doc/guides/sample_app_ug/packet_ordering.rst | 102 ++++ examples/packet_ordering/Makefile | 50 ++ examples/packet_ordering/main.c | 695 +++++++++++++++++++++++++ lib/Makefile | 1 + lib/librte_eal/common/include/rte_tailq_elem.h | 2 + lib/librte_mbuf/rte_mbuf.h | 3 + lib/librte_reorder/Makefile | 54 ++ lib/librte_reorder/rte_reorder.c | 416 +++++++++++++++ lib/librte_reorder/rte_reorder.h | 181 +++++++ lib/librte_reorder/rte_reorder_version.map | 13 + mk/rte.app.mk | 4 + 18 files changed, 2043 insertions(+) create mode 100644 app/test/test_reorder.c create mode 100644 doc/guides/prog_guide/reorder_lib.rst create mode 100644 doc/guides/sample_app_ug/packet_ordering.rst create mode 100644 examples/packet_ordering/Makefile create mode 100644 examples/packet_ordering/main.c create mode 100644 lib/librte_reorder/Makefile create mode 100644 lib/librte_reorder/rte_reorder.c create mode 100644 lib/librte_reorder/rte_reorder.h create mode 100644 lib/librte_reorder/rte_reorder_version.map -- 1.9.3