From patchwork Mon Oct 31 12:57:00 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Cindy Lu X-Patchwork-Id: 13025854 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 63BC3FA3742 for ; Mon, 31 Oct 2022 13:09:22 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1opULr-0006XO-4A; Mon, 31 Oct 2022 08:57:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1opULp-0006LO-6Y for qemu-devel@nongnu.org; Mon, 31 Oct 2022 08:57:13 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1opULn-0004d8-Lo for qemu-devel@nongnu.org; Mon, 31 Oct 2022 08:57:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667221031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=Iom6G9XqQMqp8Ol95fRW4C2Je0J0Ga5cSEzfSVUYh0I=; b=AbZW3r/BNn5ElMGYm5XNf2oiki9D0ebPUNThNGbtS5UIjULWEkECgjj+plF2YAQmLzfrBT VEn4wG4lwa/kK4ZFIEb4/B6/l8R7/glwJ+qjKi+eZHrBCckZS7U+Uw1RlyKHWuX9AUP3Tv 3HWM7Giai4IJ/ZkzX/eof8FZQ87B6jM= Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-608-3l2WvWDEOiepticGlTq6jw-1; Mon, 31 Oct 2022 08:57:09 -0400 X-MC-Unique: 3l2WvWDEOiepticGlTq6jw-1 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 543EB3817A61; Mon, 31 Oct 2022 12:57:09 +0000 (UTC) Received: from server.redhat.com (ovpn-12-79.pek2.redhat.com [10.72.12.79]) by smtp.corp.redhat.com (Postfix) with ESMTP id 3E75D111E413; Mon, 31 Oct 2022 12:57:04 +0000 (UTC) From: Cindy Lu To: lulu@redhat.com, alex.williamson@redhat.com, jasowang@redhat.com, mst@redhat.com, pbonzini@redhat.com, peterx@redhat.com, david@redhat.com, f4bug@amsat.org, sgarzare@redhat.com Cc: qemu-devel@nongnu.org Subject: [PATCH v10 0/2] vhost-vdpa: add support for vIOMMU Date: Mon, 31 Oct 2022 20:57:00 +0800 Message-Id: <20221031125702.1445168-1-lulu@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.3 Received-SPF: pass client-ip=170.10.133.124; envelope-from=lulu@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.048, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org+qemu-devel=archiver.kernel.org@nongnu.org changes in V3 1. Move function vfio_get_xlat_addr to memory.c 2. Use the existing memory listener, while the MR is iommu MR then call the function iommu_region_add/ iommu_region_del changes in V4 1.make the comments in vfio_get_xlat_addr more general changes in V5 1. Address the comments in the last version 2. Add a new arg in the function vfio_get_xlat_addr, which shows whether the memory is backed by a discard manager. So the device can have its own warning. changes in V6 move the error_report for the unpopulated discard back to memeory_get_xlat_addr changes in V7 organize the error massage to avoid the duplicate information changes in V8 Organize the code follow the comments in the last version changes in V9 Organize the code follow the comments changes in V10 Address the comments Cindy Lu (2): vfio: move implement of vfio_get_xlat_addr() to memory.c vhost-vdpa: add support for vIOMMU hw/vfio/common.c | 66 ++---------------- hw/virtio/vhost-vdpa.c | 122 ++++++++++++++++++++++++++++++--- include/exec/memory.h | 4 ++ include/hw/virtio/vhost-vdpa.h | 10 +++ softmmu/memory.c | 72 +++++++++++++++++++ 5 files changed, 202 insertions(+), 72 deletions(-)