All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ross Zwisler <ross.zwisler@linux.intel.com>
To: linux-kernel@vger.kernel.org, linux-nvdimm@lists.01.org,
	Dan Williams <dan.j.williams@intel.com>,
	Christoph Hellwig <hch@lst.de>,
	Matthew Wilcox <matthew.r.wilcox@intel.com>,
	Dave Chinner <david@fromorbit.com>
Cc: "Ross Zwisler" <ross.zwisler@linux.intel.com>,
	"David S. Miller" <davem@davemloft.net>,
	"H. Peter Anvin" <hpa@zytor.com>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
	"Alexander Viro" <viro@zeniv.linux.org.uk>,
	"Ameen Ali" <ameenali023@gmail.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Arnd Bergmann" <arnd@arndb.de>,
	"Benjamin Herrenschmidt" <benh@kernel.crashing.org>,
	"Boaz Harrosh" <boaz@plexistor.com>,
	"Borislav Petkov" <bp@suse.de>,
	"Gerald Schaefer" <gerald.schaefer@de.ibm.com>,
	"Greg KH" <gregkh@linuxfoundation.org>,
	"Heiko Carstens" <heiko.carstens@de.ibm.com>,
	"Ingo Molnar" <mingo@redhat.com>, "Jan Kara" <jack@suse.cz>,
	"Jeff Layton" <jlayton@primarydata.com>,
	"Jens Axboe" <axboe@kernel.dk>, "Jiri Slaby" <jslaby@suse.com>,
	"Joe Perches" <joe@perches.com>,
	"Jonathan Corbet" <corbet@lwn.net>,
	"Juergen Gross" <jgross@suse.com>,
	"Martin Schwidefsky" <schwidefsky@de.ibm.com>,
	"Mathieu Desnoyers" <mathieu.desnoyers@efficios.com>,
	"Matthew Wilcox" <willy@linux.intel.com>,
	"Mauro Carvalho Chehab" <mchehab@osg.samsung.com>,
	"Michael Ellerman" <mpe@ellerman.id.au>,
	"Mike Snitzer" <snitzer@redhat.com>,
	"Miklos Szeredi" <mszeredi@suse.cz>,
	"Ming Lei" <ming.lei@canonical.com>,
	"Omar Sandoval" <osandov@osandov.com>,
	"Paul Mackerras" <paulus@samba.org>,
	"Sagi Grimberg" <sagig@mellanox.com>, "Shaohua Li" <shli@fb.com>,
	"Tejun Heo" <tj@kernel.org>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Toshi Kani" <toshi.kani@hp.com>,
	"Wolfram Sang" <wsa@the-dreams.de>,
	linux-doc@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	linux-s390@vger.kernel.org, linux390@de.ibm.com,
	linuxppc-dev@lists.ozlabs.org, x86@kernel.org
Subject: [PATCH v4 0/7] dax: I/O path enhancements
Date: Tue, 18 Aug 2015 11:14:41 -0600	[thread overview]
Message-ID: <1439918088-32159-1-git-send-email-ross.zwisler@linux.intel.com> (raw)

The goal of this series is to enhance the DAX I/O path so that all operations
that store data (I/O writes, zeroing blocks, punching holes, etc.) properly
synchronize the stores to media using the PMEM API.  This ensures that the data
DAX is writing is durable on media before the operation completes.

Patches 1-4 are a few random cleanups.

Changes from v3 (all in patch 5):
 - moved <linux/uio.h> include from x86 pmem.h to linux/pmem.h (Christoph)
 - made some local void* variables where apporpriate to cut down on __force
   casts from __pmem (Christoph)
 - made a __iter_needs_pmem_wb() helper and added a TODO to move to
   non-temporal stores (Christoph)

Ross Zwisler (7):
  brd: make rd_size static
  pmem, x86: move x86 PMEM API to new pmem.h header
  pmem: remove layer when calling arch_has_wmb_pmem()
  pmem, x86: clean up conditional pmem includes
  pmem: add copy_from_iter_pmem() and clear_pmem()
  dax: update I/O path to do proper PMEM flushing
  pmem, dax: have direct_access use __pmem annotation

 Documentation/filesystems/Locking |   3 +-
 MAINTAINERS                       |   1 +
 arch/powerpc/sysdev/axonram.c     |   7 +-
 arch/x86/include/asm/cacheflush.h |  71 -----------------
 arch/x86/include/asm/pmem.h       | 158 ++++++++++++++++++++++++++++++++++++++
 drivers/block/brd.c               |   6 +-
 drivers/nvdimm/pmem.c             |   4 +-
 drivers/s390/block/dcssblk.c      |  10 ++-
 fs/block_dev.c                    |   2 +-
 fs/dax.c                          |  68 +++++++++-------
 include/linux/blkdev.h            |   8 +-
 include/linux/pmem.h              |  79 +++++++++++++++----
 12 files changed, 289 insertions(+), 128 deletions(-)
 create mode 100644 arch/x86/include/asm/pmem.h

-- 
2.1.0


WARNING: multiple messages have this Message-ID (diff)
From: Ross Zwisler <ross.zwisler@linux.intel.com>
To: linux-kernel@vger.kernel.org, linux-nvdimm@ml01.01.org,
	Dan Williams <dan.j.williams@intel.com>,
	Christoph Hellwig <hch@lst.de>,
	Matthew Wilcox <matthew.r.wilcox@intel.com>,
	Dave Chinner <david@fromorbit.com>
Cc: "Ross Zwisler" <ross.zwisler@linux.intel.com>,
	"David S. Miller" <davem@davemloft.net>,
	"H. Peter Anvin" <hpa@zytor.com>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
	"Alexander Viro" <viro@zeniv.linux.org.uk>,
	"Ameen Ali" <ameenali023@gmail.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Arnd Bergmann" <arnd@arndb.de>,
	"Benjamin Herrenschmidt" <benh@kernel.crashing.org>,
	"Boaz Harrosh" <boaz@plexistor.com>,
	"Borislav Petkov" <bp@suse.de>,
	"Gerald Schaefer" <gerald.schaefer@de.ibm.com>,
	"Greg KH" <gregkh@linuxfoundation.org>,
	"Heiko Carstens" <heiko.carstens@de.ibm.com>,
	"Ingo Molnar" <mingo@redhat.com>, "Jan Kara" <jack@suse.cz>,
	"Jeff Layton" <jlayton@primarydata.com>,
	"Jens Axboe" <axboe@kernel.dk>, "Jiri Slaby" <jslaby@suse.com>,
	"Joe Perches" <joe@perches.com>,
	"Jonathan Corbet" <corbet@lwn.net>,
	"Juergen Gross" <jgross@suse.com>,
	"Martin Schwidefsky" <schwidefsky@de.ibm.com>,
	"Mathieu Desnoyers" <mathieu.desnoyers@efficios.com>,
	"Matthew Wilcox" <willy@linux.intel.com>,
	"Mauro Carvalho Chehab" <mchehab@osg.samsung.com>,
	"Michael Ellerman" <mpe@ellerman.id.au>,
	"Mike Snitzer" <snitzer@redhat.com>,
	"Miklos Szeredi" <mszeredi@suse.cz>,
	"Ming Lei" <ming.lei@canonical.com>,
	"Omar Sandoval" <osandov@osandov.com>,
	"Paul Mackerras" <paulus@samba.org>,
	"Sagi Grimberg" <sagig@mellanox.com>, "Shaohua Li" <shli@fb.com>,
	"Tejun Heo" <tj@kernel.org>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Toshi Kani" <toshi.kani@hp.com>,
	"Wolfram Sang" <wsa@the-dreams.de>,
	linux-doc@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	linux-s390@vger.kernel.org, linux390@de.ibm.com,
	linuxppc-dev@lists.ozlabs.org, x86@kernel.org
Subject: [PATCH v4 0/7] dax: I/O path enhancements
Date: Tue, 18 Aug 2015 11:14:41 -0600	[thread overview]
Message-ID: <1439918088-32159-1-git-send-email-ross.zwisler@linux.intel.com> (raw)

The goal of this series is to enhance the DAX I/O path so that all operations
that store data (I/O writes, zeroing blocks, punching holes, etc.) properly
synchronize the stores to media using the PMEM API.  This ensures that the data
DAX is writing is durable on media before the operation completes.

Patches 1-4 are a few random cleanups.

Changes from v3 (all in patch 5):
 - moved <linux/uio.h> include from x86 pmem.h to linux/pmem.h (Christoph)
 - made some local void* variables where apporpriate to cut down on __force
   casts from __pmem (Christoph)
 - made a __iter_needs_pmem_wb() helper and added a TODO to move to
   non-temporal stores (Christoph)

Ross Zwisler (7):
  brd: make rd_size static
  pmem, x86: move x86 PMEM API to new pmem.h header
  pmem: remove layer when calling arch_has_wmb_pmem()
  pmem, x86: clean up conditional pmem includes
  pmem: add copy_from_iter_pmem() and clear_pmem()
  dax: update I/O path to do proper PMEM flushing
  pmem, dax: have direct_access use __pmem annotation

 Documentation/filesystems/Locking |   3 +-
 MAINTAINERS                       |   1 +
 arch/powerpc/sysdev/axonram.c     |   7 +-
 arch/x86/include/asm/cacheflush.h |  71 -----------------
 arch/x86/include/asm/pmem.h       | 158 ++++++++++++++++++++++++++++++++++++++
 drivers/block/brd.c               |   6 +-
 drivers/nvdimm/pmem.c             |   4 +-
 drivers/s390/block/dcssblk.c      |  10 ++-
 fs/block_dev.c                    |   2 +-
 fs/dax.c                          |  68 +++++++++-------
 include/linux/blkdev.h            |   8 +-
 include/linux/pmem.h              |  79 +++++++++++++++----
 12 files changed, 289 insertions(+), 128 deletions(-)
 create mode 100644 arch/x86/include/asm/pmem.h

-- 
2.1.0


WARNING: multiple messages have this Message-ID (diff)
From: Ross Zwisler <ross.zwisler@linux.intel.com>
To: linux-kernel@vger.kernel.org, linux-nvdimm@lists.01.org,
	Dan Williams <dan.j.williams@intel.com>,
	Christoph Hellwig <hch@lst.de>,
	Matthew Wilcox <matthew.r.wilcox@intel.com>,
	Dave Chinner <david@fromorbit.com>
Cc: "Ross Zwisler" <ross.zwisler@linux.intel.com>,
	"David S. Miller" <davem@davemloft.net>,
	"H. Peter Anvin" <hpa@zytor.com>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
	"Alexander Viro" <viro@zeniv.linux.org.uk>,
	"Ameen Ali" <ameenali023@gmail.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Arnd Bergmann" <arnd@arndb.de>,
	"Benjamin Herrenschmidt" <benh@kernel.crashing.org>,
	"Boaz Harrosh" <boaz@plexistor.com>,
	"Borislav Petkov" <bp@suse.de>,
	"Gerald Schaefer" <gerald.schaefer@de.ibm.com>,
	"Greg KH" <gregkh@linuxfoundation.org>,
	"Heiko Carstens" <heiko.carstens@de.ibm.com>,
	"Ingo Molnar" <mingo@redhat.com>, "Jan Kara" <jack@suse.cz>,
	"Jeff Layton" <jlayton@primarydata.com>,
	"Jens Axboe" <axboe@kernel.dk>, "Jiri Slaby" <jslaby@suse.com>,
	"Joe Perches" <joe@perches.com>,
	"Jonathan Corbet" <corbet@lwn.net>
Subject: [PATCH v4 0/7] dax: I/O path enhancements
Date: Tue, 18 Aug 2015 11:14:41 -0600	[thread overview]
Message-ID: <1439918088-32159-1-git-send-email-ross.zwisler@linux.intel.com> (raw)

The goal of this series is to enhance the DAX I/O path so that all operations
that store data (I/O writes, zeroing blocks, punching holes, etc.) properly
synchronize the stores to media using the PMEM API.  This ensures that the data
DAX is writing is durable on media before the operation completes.

Patches 1-4 are a few random cleanups.

Changes from v3 (all in patch 5):
 - moved <linux/uio.h> include from x86 pmem.h to linux/pmem.h (Christoph)
 - made some local void* variables where apporpriate to cut down on __force
   casts from __pmem (Christoph)
 - made a __iter_needs_pmem_wb() helper and added a TODO to move to
   non-temporal stores (Christoph)

Ross Zwisler (7):
  brd: make rd_size static
  pmem, x86: move x86 PMEM API to new pmem.h header
  pmem: remove layer when calling arch_has_wmb_pmem()
  pmem, x86: clean up conditional pmem includes
  pmem: add copy_from_iter_pmem() and clear_pmem()
  dax: update I/O path to do proper PMEM flushing
  pmem, dax: have direct_access use __pmem annotation

 Documentation/filesystems/Locking |   3 +-
 MAINTAINERS                       |   1 +
 arch/powerpc/sysdev/axonram.c     |   7 +-
 arch/x86/include/asm/cacheflush.h |  71 -----------------
 arch/x86/include/asm/pmem.h       | 158 ++++++++++++++++++++++++++++++++++++++
 drivers/block/brd.c               |   6 +-
 drivers/nvdimm/pmem.c             |   4 +-
 drivers/s390/block/dcssblk.c      |  10 ++-
 fs/block_dev.c                    |   2 +-
 fs/dax.c                          |  68 +++++++++-------
 include/linux/blkdev.h            |   8 +-
 include/linux/pmem.h              |  79 +++++++++++++++----
 12 files changed, 289 insertions(+), 128 deletions(-)
 create mode 100644 arch/x86/include/asm/pmem.h

-- 
2.1.0


             reply	other threads:[~2015-08-18 17:14 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-18 17:14 Ross Zwisler [this message]
2015-08-18 17:14 ` [PATCH v4 0/7] dax: I/O path enhancements Ross Zwisler
2015-08-18 17:14 ` Ross Zwisler
2015-08-18 17:14 ` [PATCH v4 1/7] brd: make rd_size static Ross Zwisler
2015-08-18 17:14   ` Ross Zwisler
2015-08-18 17:14 ` [PATCH v4 2/7] pmem, x86: move x86 PMEM API to new pmem.h header Ross Zwisler
2015-08-18 17:14   ` Ross Zwisler
2015-08-18 17:14 ` [PATCH v4 3/7] pmem: remove layer when calling arch_has_wmb_pmem() Ross Zwisler
2015-08-18 17:14   ` Ross Zwisler
2015-08-18 17:14 ` [PATCH v4 4/7] pmem, x86: clean up conditional pmem includes Ross Zwisler
2015-08-18 17:14   ` Ross Zwisler
2015-08-18 17:14 ` [PATCH v4 5/7] pmem: add copy_from_iter_pmem() and clear_pmem() Ross Zwisler
2015-08-18 17:14   ` Ross Zwisler
2015-08-18 17:14 ` [PATCH v4 6/7] dax: update I/O path to do proper PMEM flushing Ross Zwisler
2015-08-18 17:14   ` Ross Zwisler
2015-08-18 17:14 ` [PATCH v4 7/7] pmem, dax: have direct_access use __pmem annotation Ross Zwisler
2015-08-18 17:14   ` Ross Zwisler
2015-08-18 17:14   ` Ross Zwisler

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1439918088-32159-1-git-send-email-ross.zwisler@linux.intel.com \
    --to=ross.zwisler@linux.intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=ameenali023@gmail.com \
    --cc=arnd@arndb.de \
    --cc=axboe@kernel.dk \
    --cc=benh@kernel.crashing.org \
    --cc=boaz@plexistor.com \
    --cc=bp@suse.de \
    --cc=corbet@lwn.net \
    --cc=dan.j.williams@intel.com \
    --cc=davem@davemloft.net \
    --cc=david@fromorbit.com \
    --cc=gerald.schaefer@de.ibm.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hch@lst.de \
    --cc=heiko.carstens@de.ibm.com \
    --cc=hpa@zytor.com \
    --cc=jack@suse.cz \
    --cc=jgross@suse.com \
    --cc=jlayton@primarydata.com \
    --cc=joe@perches.com \
    --cc=jslaby@suse.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nvdimm@lists.01.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linux390@de.ibm.com \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=martin.petersen@oracle.com \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=matthew.r.wilcox@intel.com \
    --cc=mchehab@osg.samsung.com \
    --cc=ming.lei@canonical.com \
    --cc=mingo@redhat.com \
    --cc=mpe@ellerman.id.au \
    --cc=mszeredi@suse.cz \
    --cc=osandov@osandov.com \
    --cc=paulus@samba.org \
    --cc=sagig@mellanox.com \
    --cc=schwidefsky@de.ibm.com \
    --cc=shli@fb.com \
    --cc=snitzer@redhat.com \
    --cc=tglx@linutronix.de \
    --cc=tj@kernel.org \
    --cc=toshi.kani@hp.com \
    --cc=u.kleine-koenig@pengutronix.de \
    --cc=viro@zeniv.linux.org.uk \
    --cc=willy@linux.intel.com \
    --cc=wsa@the-dreams.de \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.