Received: by 2002:ac0:a582:0:0:0:0:0 with SMTP id m2-v6csp2056235imm; Sat, 13 Oct 2018 09:11:44 -0700 (PDT) X-Google-Smtp-Source: ACcGV637rBNd3m42xTbDUOHyoUypCQ8q09fVR+r2q8yAy1Wr/lUmzwKfLhQXiX/5Uv4VyZi8tHgE X-Received: by 2002:a65:40c2:: with SMTP id u2-v6mr9741571pgp.123.1539447104382; Sat, 13 Oct 2018 09:11:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1539447104; cv=none; d=google.com; s=arc-20160816; b=iJmCMJjRW2BP1oTlOs6hENQpeaPa6jRFSck4vOlni5z9SYKR3kD2zKUBZXSHRGXKUY omrbWn0HTqgbwVfnewflI+9SR8FhXyFvZbm/C8MYdNqkUOpBL1ajHw8DyP564mNp1RQ1 5AMOee6c1y/41k49OyOa5HwVkLhJTpz9Sr2N0zjCh6IJ4/ngsQ0/jRYmKEo23YHAqhTk ZoduQEFCIjfi4kFUcNU8H3qcSXdBsilU3cjsIK2Oal6AmVt/etL1+U3GG5b0VfkCikKD Kqy/TNZ3UuuEZuWqTenu9n+OBQzIsbwlmqqsA6bXfGDLaNBO3kz2YFH9GqqsO8Omlh0o bXkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=1rUm75vsj2T3ZwwUEwJjSXUa/a61Y8S155/Y4IOfsEg=; b=g+/3q5gDnsCDG8+ohAGjrIK+XKgVnvnrPQ6tkpNUeiyILAhXDWVZrt6/Z0WmPJCs27 2euNFfvV8I2uto+uRTdQKj/kUnDN7c2527Bbdhl/JySk1uWoyNXu+SOiK26JNWAlEFi1 Sx16IPlMEXlYhzXShVPpLSm88HjF+yWS9CGXRr8e9FqD+vHOlKfFgqlrpvwgp5KUtfFd kM18d8QvIH/bjT6QOa7cr3CaEQZ21ZxItDhOyIM9d1AMKq1zMswbPxu+vBc/3uphQvLb dRht57JYGAgqFmvH3KjDInC7UTo4lHVKJf12ZeEvix/JM/bEJmxZRQC+GyU7YQav7biZ mu3Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel-com.20150623.gappssmtp.com header.s=20150623 header.b=YOL18WEI; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n15-v6si4941599pgi.537.2018.10.13.09.11.29; Sat, 13 Oct 2018 09:11:44 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@intel-com.20150623.gappssmtp.com header.s=20150623 header.b=YOL18WEI; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726822AbeJMXsI (ORCPT + 99 others); Sat, 13 Oct 2018 19:48:08 -0400 Received: from mail-ot1-f66.google.com ([209.85.210.66]:38875 "EHLO mail-ot1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726417AbeJMXsI (ORCPT ); Sat, 13 Oct 2018 19:48:08 -0400 Received: by mail-ot1-f66.google.com with SMTP id l1so15139657otj.5 for ; Sat, 13 Oct 2018 09:10:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=1rUm75vsj2T3ZwwUEwJjSXUa/a61Y8S155/Y4IOfsEg=; b=YOL18WEIzI48IFjuX+LN0oYP7r/rIK24Le2MOrDJQNVTY6KWL2bKLs1kcSnUdyC9mw kfv/zSqV9CoSK2O32AxY53OdqQPLPOe0sGtqzBCCtkZ9/CU+pYbpCIM4k+pNp2A4TDPX C/4LjmjsVdhZCXHy+eTASqsKyKKZBB7zjS3xU8kd/n8dG3kK64D4L65HYxuqw1rY/6RA OV8Xw1mo9LAIFPQIhgifOGxs8mzC3jL4IfAHC4MXs0/kqT3vyZzAhrqaaFocUs+In0dy 9hZI4C0v0r6LNMFV1uRf5SZ2Pa+oi1lNQPyOyqD8iOyJSip+t+8YFd0lSb4XKvfh6H3I QVkQ== 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=1rUm75vsj2T3ZwwUEwJjSXUa/a61Y8S155/Y4IOfsEg=; b=jSkt0po3ZiZByVLU89Y1tqNl6RUZuYhA38qF/9J9mLfqIh6AZb/HasBgNVm8oGr0+4 QMzkdpCxNwxTJUm3Ho37x2mONz8hkPNIW51nKc7CseE9v5Vx8njWEM7O1U8OBP5xpHcA 3cFvVbcbpgI7qmCwO6/2Zf+d0NiErxBO/Aj9VmEFeeBLCE2YefrCwT6V+R+i6ZxeOFgV LdUq4Pa9dKKfO0AupS+b5ro/UAKLksQ0tYJeYWh0mrOYxoUTtUf77Cs0K7MoqMv2gt2r KmSgS5oF6GYl9WfEujyt1VQUdGaiZhRkbbfJ8rnms/+N+UDWlxT1B1mL7XhnZ0cErVon HzDA== X-Gm-Message-State: ABuFfoiFcBKcytRIPMATnx3T0yBpqivHkMhvf7rHzje0TxX5iDuHVQrr amHOVHILquah4DS0Zom/WqNAS611uUmZVmnDHRwEVw== X-Received: by 2002:a9d:256e:: with SMTP id j43mr6779840otd.367.1539447024538; Sat, 13 Oct 2018 09:10:24 -0700 (PDT) MIME-Version: 1.0 References: <20181013050021.11962-1-pagupta@redhat.com> <20181013050021.11962-3-pagupta@redhat.com> In-Reply-To: <20181013050021.11962-3-pagupta@redhat.com> From: Dan Williams Date: Sat, 13 Oct 2018 09:10:13 -0700 Message-ID: Subject: Re: [PATCH v2 2/2] virtio-pmem: Add virtio pmem driver To: Pankaj Gupta Cc: Linux Kernel Mailing List , KVM list , Qemu Developers , linux-nvdimm , Jan Kara , Stefan Hajnoczi , Rik van Riel , Nitesh Narayan Lal , Kevin Wolf , Paolo Bonzini , zwisler@kernel.org, Vishal L Verma , Dave Jiang , David Hildenbrand , Xiao Guangrong , Christoph Hellwig , "Michael S. Tsirkin" , lcapitulino@redhat.com, Igor Mammedov , Eric Blake Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Oct 12, 2018 at 10:01 PM Pankaj Gupta wrote: > > This patch adds virtio-pmem driver for KVM guest. > > Guest reads the persistent memory range information from > Qemu over VIRTIO and registers it on nvdimm_bus. It also > creates a nd_region object with the persistent memory > range information so that existing 'nvdimm/pmem' driver > can reserve this into system memory map. This way > 'virtio-pmem' driver uses existing functionality of pmem > driver to register persistent memory compatible for DAX > capable filesystems. > > This also provides function to perform guest flush over > VIRTIO from 'pmem' driver when userspace performs flush > on DAX memory range. Before we can move forward with this driver we need additional filesystem enabling to detect when the backing device is fronting DAX pmem or a paravirtualized page cache through virtio-pmem. Any interface that requires fsync() and a round trip to the hypervisor to flush host page cache is not DAX.