From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id D3372A034F for ; Mon, 30 Aug 2021 08:20:24 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CD184410F8; Mon, 30 Aug 2021 08:20:24 +0200 (CEST) Received: from smtp-relay-internal-0.canonical.com (smtp-relay-internal-0.canonical.com [185.125.188.122]) by mails.dpdk.org (Postfix) with ESMTP id 62107410F8 for ; Mon, 30 Aug 2021 08:20:23 +0200 (CEST) Received: from mail-qv1-f69.google.com (mail-qv1-f69.google.com [209.85.219.69]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-0.canonical.com (Postfix) with ESMTPS id 22EDE3F315 for ; Mon, 30 Aug 2021 06:20:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1630304423; bh=IwtJRqLF/NCDaX0R8yg1vSmmT1vNowX2JGFH5taRQpE=; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=ERbr1LaP72o/d/CzbiPAsQFi0NILyeXisNOSTb2nRI+xVnWAml5bGxMCe2psYdjFH mHERBDegFgEdAFTLUmEEk/F6hzkIMQ4P6k8gLl0LTaWl9EbUZ1hJ+TNdpP9pxpr9hj bTPTzkQhbjOSWncaoIjQok232qV5aGbUES0o6aV7T+fij5ZWTaErUgFfhis46/DmTm oxMKoQnmHUI0ybjPIiqx8XvT207sILbxN9oUsX2b7/VvILlyozT6lBJzcg2m/03o10 E+/iOd3zIXjwlg8O7wMuGIaLqArZ4FX6VHUe/5037xLzouIxhmESB8IdFidOl5e9LF rL3RIO+iMH5kg== Received: by mail-qv1-f69.google.com with SMTP id u11-20020a0562141c0b00b0036201580785so1478269qvc.11 for ; Sun, 29 Aug 2021 23:20:23 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=IwtJRqLF/NCDaX0R8yg1vSmmT1vNowX2JGFH5taRQpE=; b=FgVuWbOR0vkgXispyytH5HbKcwS7VP1nXHrXgBLnFTsMvCGlyMzVGvOZgxR7QqfpyF gNxFW0FxXLsUtqez1h2HPJR0x2SA0TDm+Z69eXV2pFA7iLCEShDAjAoix2s1idzivnHn twOOIYkKVU6Yd6mUSk3nRtn9/eIo+Fb627U6vtVgSUBzvdPXHL45AuGS9K23LK7V8e88 fvRaA6zjji+uiKHSgoTRhKX13RKXfZT5kAwd9dfCtA6yNEUYNP9zzcTFnXDljSSLaW/a 28XjWIiBe0OpkqL4Pv1kz3JnS5OlM0+snayJCnH8AV1rH8ScHpUq2SODZ95SlXlWPABT 3tVA== X-Gm-Message-State: AOAM530AvYp43MGTzVwCICeWlRj5Zl1fZ6Bu8QSdiWZ3dG05zT/1ceNz iLGH5W0UOdkVWneHsuN0xp5JDwRshbPKh8mjOYq4iQNTnmgjeHvBoGpkyqfJca6Ej2UGSPkGDD2 xYUz7viXVSHb49s6cyAEfHcJ9wG2mBk9+Nm86t/xi X-Received: by 2002:a0c:f8c2:: with SMTP id h2mr22123220qvo.45.1630304422151; Sun, 29 Aug 2021 23:20:22 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz2C65Ff98ckIgVRzJapev+uzqDmApJKhh04R5s8ilQ4UVrH6H2sEaOjlSfwYe2HEZyI04X846heYsJvKatcho= X-Received: by 2002:a0c:f8c2:: with SMTP id h2mr22123212qvo.45.1630304421987; Sun, 29 Aug 2021 23:20:21 -0700 (PDT) MIME-Version: 1.0 References: <20210830030919.48813-1-chenbo.xia@intel.com> In-Reply-To: <20210830030919.48813-1-chenbo.xia@intel.com> From: Christian Ehrhardt Date: Mon, 30 Aug 2021 08:19:56 +0200 Message-ID: To: Chenbo Xia Cc: dpdk stable , Maxime Coquelin , Marvin Liu Content-Type: text/plain; charset="UTF-8" Subject: Re: [dpdk-stable] [PATCH 19.11] vhost: utilize dynamic memory allocator X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" On Mon, Aug 30, 2021 at 5:22 AM Chenbo Xia wrote: > > [ upstream commit 20fd2f91cf2fb45ffc66abd4ca8ab26906cd0d1f ] Thanks, applied! > Replace dynamic memory allocator with dpdk memory allocator. > > Bugzilla ID: 794 > Fixes: 57589cdfd784 ("vhost: fix missing guest pages table NUMA realloc") > Cc: stable@dpdk.org > > Signed-off-by: Marvin Liu > Signed-off-by: Chenbo Xia > Reviewed-by: Maxime Coquelin > --- > lib/librte_vhost/vhost_user.c | 19 +++++++++++-------- > 1 file changed, 11 insertions(+), 8 deletions(-) > > diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c > index b1c0bef7b6..f35b6423d7 100644 > --- a/lib/librte_vhost/vhost_user.c > +++ b/lib/librte_vhost/vhost_user.c > @@ -198,7 +198,7 @@ vhost_backend_cleanup(struct virtio_net *dev) > dev->mem = NULL; > } > > - free(dev->guest_pages); > + rte_free(dev->guest_pages); > dev->guest_pages = NULL; > > if (dev->log_addr) { > @@ -939,11 +939,12 @@ add_one_guest_page(struct virtio_net *dev, uint64_t guest_phys_addr, > if (dev->nr_guest_pages == dev->max_guest_pages) { > dev->max_guest_pages *= 2; > old_pages = dev->guest_pages; > - dev->guest_pages = realloc(dev->guest_pages, > - dev->max_guest_pages * sizeof(*page)); > - if (!dev->guest_pages) { > + dev->guest_pages = rte_realloc(dev->guest_pages, > + dev->max_guest_pages * sizeof(*page), > + RTE_CACHE_LINE_SIZE); > + if (dev->guest_pages == NULL) { > RTE_LOG(ERR, VHOST_CONFIG, "cannot realloc guest_pages\n"); > - free(old_pages); > + rte_free(old_pages); > return -1; > } > } > @@ -1097,10 +1098,12 @@ vhost_user_set_mem_table(struct virtio_net **pdev, struct VhostUserMsg *msg, > vhost_user_iotlb_flush_all(dev->virtqueue[i]); > > dev->nr_guest_pages = 0; > - if (!dev->guest_pages) { > + if (dev->guest_pages == NULL) { > dev->max_guest_pages = 8; > - dev->guest_pages = malloc(dev->max_guest_pages * > - sizeof(struct guest_page)); > + dev->guest_pages = rte_zmalloc(NULL, > + dev->max_guest_pages * > + sizeof(struct guest_page), > + RTE_CACHE_LINE_SIZE); > if (dev->guest_pages == NULL) { > RTE_LOG(ERR, VHOST_CONFIG, > "(%d) failed to allocate memory " > -- > 2.17.1 > -- Christian Ehrhardt Staff Engineer, Ubuntu Server Canonical Ltd