From patchwork Wed Sep 2 13:16:39 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Monjalon X-Patchwork-Id: 6866 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id AE9608E84; Wed, 2 Sep 2015 15:18:08 +0200 (CEST) Received: from mail-wi0-f170.google.com (mail-wi0-f170.google.com [209.85.212.170]) by dpdk.org (Postfix) with ESMTP id 94E708E7C for ; Wed, 2 Sep 2015 15:18:07 +0200 (CEST) Received: by wicmc4 with SMTP id mc4so65961346wic.0 for ; Wed, 02 Sep 2015 06:18:07 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=VIPEDqrTyGAQVl3Zu/wr99qWOuDaLIgwN1hSmpI9xtE=; b=gRj7rGF2+Ne8JRAqe/IBs0LY8D2ZgM/V1p4fHl3hVSe9u1dUQjYBhruEXAHBbmCnEX zUQ0tJoW8B769b7kXFcwkSkhTGe0/yd4Irlc1IqEw5MBFSFnfyEHzKW5I3mThDYpLdXx trOc8/bgtGO2MEdFD9B8devNfGyF8EeHv2oZID1elbtoYZGy2U7xTHIQJoniJkhI3a9h bOubn1Un3U/8wKWzW1dcuIdjqmh2f5lVSaDEz0aHxyZAw7I9x+VNYjWYIY1Vv6NiHeOt RR3TzNfGjd6YlhbfTRagfwQ+NATa8gNCv/cmG9tYClkftZYn82h+BCikqNWO+enHTCaM NxtQ== X-Gm-Message-State: ALoCoQloiOXDPI/FnuyIhufCb88QE76Qq6+OBYLnPXklblWPyqxnoCA68DuZREsJaoT20kcyyjTa X-Received: by 10.180.108.175 with SMTP id hl15mr4167704wib.1.1441199887318; Wed, 02 Sep 2015 06:18:07 -0700 (PDT) Received: from localhost.localdomain (136-92-190-109.dsl.ovh.fr. [109.190.92.136]) by smtp.gmail.com with ESMTPSA id i6sm32392938wje.33.2015.09.02.06.18.06 for (version=TLSv1/SSLv3 cipher=OTHER); Wed, 02 Sep 2015 06:18:06 -0700 (PDT) From: Thomas Monjalon To: dev@dpdk.org Date: Wed, 2 Sep 2015 15:16:39 +0200 Message-Id: <1441199803-27055-7-git-send-email-thomas.monjalon@6wind.com> X-Mailer: git-send-email 2.5.1 In-Reply-To: <1441199803-27055-1-git-send-email-thomas.monjalon@6wind.com> References: <1441138697-25157-1-git-send-email-thomas.monjalon@6wind.com> <1441199803-27055-1-git-send-email-thomas.monjalon@6wind.com> Subject: [dpdk-dev] [PATCH v2 06/10] mem: remove dummy malloc 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The malloc library is now part of the EAL. Signed-off-by: Thomas Monjalon Acked-by: Stephen Hemminger Acked-by: Neil Horman --- MAINTAINERS | 1 - doc/guides/prog_guide/dev_kit_build_system.rst | 2 +- doc/guides/prog_guide/env_abstraction_layer.rst | 2 +- doc/guides/prog_guide/source_org.rst | 1 - .../thread_safety_intel_dpdk_functions.rst | 2 +- doc/guides/rel_notes/deprecation.rst | 5 --- doc/guides/rel_notes/release_2_2.rst | 3 +- lib/Makefile | 1 - lib/librte_malloc/Makefile | 48 ---------------------- lib/librte_malloc/rte_malloc_empty.c | 34 --------------- lib/librte_malloc/rte_malloc_version.map | 3 -- mk/rte.app.mk | 1 - 12 files changed, 5 insertions(+), 98 deletions(-) delete mode 100644 lib/librte_malloc/Makefile delete mode 100644 lib/librte_malloc/rte_malloc_empty.c delete mode 100644 lib/librte_malloc/rte_malloc_version.map diff --git a/MAINTAINERS b/MAINTAINERS index 17d4265..080a8e8 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -102,7 +102,6 @@ F: lib/librte_eal/common/include/rte_malloc.h F: lib/librte_eal/common/*malloc* F: lib/librte_eal/common/eal_common_mem* F: lib/librte_eal/common/eal_hugepages.h -F: lib/librte_malloc/ F: doc/guides/prog_guide/env_abstraction_layer.rst F: app/test/test_func_reentrancy.c F: app/test/test_malloc.c diff --git a/doc/guides/prog_guide/dev_kit_build_system.rst b/doc/guides/prog_guide/dev_kit_build_system.rst index 7dc2de6..dd3e3d0 100644 --- a/doc/guides/prog_guide/dev_kit_build_system.rst +++ b/doc/guides/prog_guide/dev_kit_build_system.rst @@ -85,7 +85,7 @@ Each build directory contains include files, libraries, and applications: librte_cmdline.a librte_lpm.a librte_mempool.a librte_ring.a - librte_eal.a librte_malloc.a librte_pmd_e1000.a librte_timer.a + librte_eal.a librte_pmd_e1000.a librte_timer.a ~/DEV/DPDK$ ls i686-native-linuxapp-gcc/include/ diff --git a/doc/guides/prog_guide/env_abstraction_layer.rst b/doc/guides/prog_guide/env_abstraction_layer.rst index f1b3ff1..a03e40d 100644 --- a/doc/guides/prog_guide/env_abstraction_layer.rst +++ b/doc/guides/prog_guide/env_abstraction_layer.rst @@ -115,7 +115,7 @@ The physical address of the reserved memory for that memory zone is also returne .. note:: - Memory reservations done using the APIs provided by the rte_malloc library are also backed by pages from the hugetlbfs filesystem. + Memory reservations done using the APIs provided by rte_malloc are also backed by pages from the hugetlbfs filesystem. Xen Dom0 support without hugetbls ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/doc/guides/prog_guide/source_org.rst b/doc/guides/prog_guide/source_org.rst index b81e965..ae11b3b 100644 --- a/doc/guides/prog_guide/source_org.rst +++ b/doc/guides/prog_guide/source_org.rst @@ -74,7 +74,6 @@ The lib directory contains:: +-- librte_kni # Kernel NIC interface +-- librte_kvargs # Argument parsing library +-- librte_lpm # Longest prefix match library - +-- librte_malloc # Malloc-like functions +-- librte_mbuf # Packet and control mbuf manipulation +-- librte_mempool # Memory pool manager (fixed sized objects) +-- librte_meter # QoS metering library diff --git a/doc/guides/prog_guide/thread_safety_intel_dpdk_functions.rst b/doc/guides/prog_guide/thread_safety_intel_dpdk_functions.rst index 0034bf4..403e5fc 100644 --- a/doc/guides/prog_guide/thread_safety_intel_dpdk_functions.rst +++ b/doc/guides/prog_guide/thread_safety_intel_dpdk_functions.rst @@ -73,7 +73,7 @@ Performance Insensitive API Outside of the performance sensitive areas described in Section 25.1, the DPDK provides a thread-safe API for most other libraries. -For example, malloc(librte_malloc) and memzone functions are safe for use in multi-threaded and multi-process environments. +For example, malloc and memzone functions are safe for use in multi-threaded and multi-process environments. The setup and configuration of the PMD is not performance sensitive, but is not thread safe either. It is possible that the multiple read/writes during PMD setup and configuration could be corrupted in a multi-thread environment. diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 604a899..3fa4c90 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -21,11 +21,6 @@ Deprecation Notices * The field mem_location of the rte_lpm structure is deprecated and should be removed as well as the macros RTE_LPM_HEAP and RTE_LPM_MEMZONE. -* librte_malloc library has been integrated into librte_eal. The 2.1 release - creates a dummy/empty malloc library to fulfill binaries with dynamic linking - dependencies on librte_malloc.so. Such dummy library will not be created from - release 2.2 so binaries will need to be rebuilt. - * The following fields have been deprecated in rte_eth_stats: imissed, ibadcrc, ibadlen, imcasts, fdirmatch, fdirmiss, tx_pause_xon, rx_pause_xon, tx_pause_xoff, rx_pause_xoff diff --git a/doc/guides/rel_notes/release_2_2.rst b/doc/guides/rel_notes/release_2_2.rst index 8a5b29a..f0f67da 100644 --- a/doc/guides/rel_notes/release_2_2.rst +++ b/doc/guides/rel_notes/release_2_2.rst @@ -32,6 +32,8 @@ ABI Changes * The mbuf structure was changed to support unified packet type. It was already done in 2.1 for CONFIG_RTE_NEXT_ABI. +* The dummy malloc library is removed. The content was moved into EAL in 2.1. + Shared Library Versions ----------------------- @@ -53,7 +55,6 @@ The libraries prepended with a plus sign were incremented in this version. librte_kni.so.1 librte_kvargs.so.1 librte_lpm.so.1 - librte_malloc.so.1 + librte_mbuf.so.2 librte_mempool.so.1 librte_meter.so.1 diff --git a/lib/Makefile b/lib/Makefile index 2055539..9727b83 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -33,7 +33,6 @@ include $(RTE_SDK)/mk/rte.vars.mk DIRS-y += librte_compat DIRS-$(CONFIG_RTE_LIBRTE_EAL) += librte_eal -DIRS-$(CONFIG_RTE_LIBRTE_EAL) += librte_malloc DIRS-$(CONFIG_RTE_LIBRTE_RING) += librte_ring DIRS-$(CONFIG_RTE_LIBRTE_MEMPOOL) += librte_mempool DIRS-$(CONFIG_RTE_LIBRTE_MBUF) += librte_mbuf diff --git a/lib/librte_malloc/Makefile b/lib/librte_malloc/Makefile deleted file mode 100644 index 9558f3d..0000000 --- a/lib/librte_malloc/Makefile +++ /dev/null @@ -1,48 +0,0 @@ -# BSD LICENSE -# -# Copyright(c) 2010-2014 Intel Corporation. All rights reserved. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in -# the documentation and/or other materials provided with the -# distribution. -# * Neither the name of Intel Corporation nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -include $(RTE_SDK)/mk/rte.vars.mk - -# library name -LIB = librte_malloc.a - -LIBABIVER := 1 - -CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 - -EXPORT_MAP := rte_malloc_version.map - -# all source are stored in SRCS-y -SRCS-$(CONFIG_RTE_LIBRTE_EAL) := rte_malloc_empty.c - -# this lib needs eal -DEPDIRS-$(CONFIG_RTE_LIBRTE_EAL) += lib/librte_eal - -include $(RTE_SDK)/mk/rte.lib.mk diff --git a/lib/librte_malloc/rte_malloc_empty.c b/lib/librte_malloc/rte_malloc_empty.c deleted file mode 100644 index 4892a61..0000000 --- a/lib/librte_malloc/rte_malloc_empty.c +++ /dev/null @@ -1,34 +0,0 @@ -/*- - * BSD LICENSE - * - * Copyright(c) 2010-2015 Intel Corporation. All rights reserved. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * * Neither the name of Intel Corporation nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/* Empty file to be able to create a dummy library for deprecation policy */ diff --git a/lib/librte_malloc/rte_malloc_version.map b/lib/librte_malloc/rte_malloc_version.map deleted file mode 100644 index 63cb5fc..0000000 --- a/lib/librte_malloc/rte_malloc_version.map +++ /dev/null @@ -1,3 +0,0 @@ -DPDK_2.0 { - local: *; -}; diff --git a/mk/rte.app.mk b/mk/rte.app.mk index 3871205..9e1909e 100644 --- a/mk/rte.app.mk +++ b/mk/rte.app.mk @@ -114,7 +114,6 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_KVARGS) += -lrte_kvargs _LDLIBS-$(CONFIG_RTE_LIBRTE_MBUF) += -lrte_mbuf _LDLIBS-$(CONFIG_RTE_LIBRTE_IP_FRAG) += -lrte_ip_frag _LDLIBS-$(CONFIG_RTE_LIBRTE_ETHER) += -lethdev -_LDLIBS-$(CONFIG_RTE_LIBRTE_MALLOC) += -lrte_malloc _LDLIBS-$(CONFIG_RTE_LIBRTE_MEMPOOL) += -lrte_mempool _LDLIBS-$(CONFIG_RTE_LIBRTE_RING) += -lrte_ring _LDLIBS-$(CONFIG_RTE_LIBRTE_EAL) += -lrte_eal