From patchwork Thu Jun 17 10:58:38 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Coquelin X-Patchwork-Id: 94345 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id C3538A0C4D; Thu, 17 Jun 2021 13:00:33 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4C624410E4; Thu, 17 Jun 2021 12:58:58 +0200 (CEST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [216.205.24.124]) by mails.dpdk.org (Postfix) with ESMTP id 4AAFA410E4 for ; Thu, 17 Jun 2021 12:58:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1623927535; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ljwhaufBy1FbBcNaI2/rgsR4bQ/trWd/yrKQS4GsP4g=; b=GlqViCL8rOgn9I7GJ/7sQ1LEM27tRwwl7TiGQFRLfgjzEkxoXwHay1Nf3jI2cCQkK5Km40 pEpR0gPTjNl1FrytiZUkvhgqtCrl4gExQhNUkv2+Gk6W4YKZW5UJ3xH2TlEcKewsCipsSU SScSenjsmCoX7EdGakbSJ5PxQ12onh0= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-445-CHGNltE9O2ySe5rwOhiMIQ-1; Thu, 17 Jun 2021 06:58:52 -0400 X-MC-Unique: CHGNltE9O2ySe5rwOhiMIQ-1 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id B5A0F814242; Thu, 17 Jun 2021 10:58:50 +0000 (UTC) Received: from max-t490s.redhat.com (unknown [10.36.110.45]) by smtp.corp.redhat.com (Postfix) with ESMTP id 77AE7705B9; Thu, 17 Jun 2021 10:58:49 +0000 (UTC) From: Maxime Coquelin To: dev@dpdk.org, david.marchand@redhat.com, chenbo.xia@intel.com Cc: Maxime Coquelin Date: Thu, 17 Jun 2021 12:58:38 +0200 Message-Id: <20210617105845.125472-1-maxime.coquelin@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=maxime.coquelin@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Subject: [dpdk-dev] [PATCH 0/7] vhost: Fix and improve NUMA reallocation X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patch series first fixes missing reallocations of some Virtqueue and device metadata. Then, it improves the numa_realloc function by using rte_realloc_socket API that takes care of the memcpy & freeing. The VQs NUMA IDs are also saved in the VQ metadata and used for every allocations so that all allocations before NUMA realloc are on the same VQ, later ones are allocated on the proper one. Finally inflight feature metada are converted from calloc() to rte_zmalloc_socket() and their reallocation is handled in numa_realloc(). Changes in v3: ============== - Fix copy/paste issues (David) - Ad new patch to fix multiqueue reallocation Changes in v2: ============== - Add missing NUMA realloc in patch 6 Maxime Coquelin (7): vhost: fix missing memory table NUMA realloc vhost: fix missing guest pages table NUMA realloc vhost: fix missing cache logging NUMA realloc vhost: fix NUMA reallocation with multiqueue vhost: improve NUMA reallocation vhost: allocate all data on same node as virtqueue vhost: convert inflight data to DPDK allocation API lib/vhost/vhost.c | 38 +++--- lib/vhost/vhost.h | 1 + lib/vhost/vhost_user.c | 266 ++++++++++++++++++++++++++--------------- 3 files changed, 188 insertions(+), 117 deletions(-)