From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751944AbcFWAFt (ORCPT ); Wed, 22 Jun 2016 20:05:49 -0400 Received: from g2t1383g.austin.hpe.com ([15.233.16.89]:33934 "EHLO g2t1383g.austin.hpe.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751758AbcFWAFT (ORCPT ); Wed, 22 Jun 2016 20:05:19 -0400 From: Toshi Kani To: snitzer@redhat.com, axboe@kernel.dk, dan.j.williams@intel.com Cc: agk@redhat.com, ross.zwisler@linux.intel.com, viro@zeniv.linux.org.uk, toshi.kani@hpe.com, linux-nvdimm@ml01.01.org, dm-devel@redhat.com, linux-raid@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 0/3] Support DAX for device-mapper dm-linear devices Date: Wed, 22 Jun 2016 17:54:51 -0600 Message-Id: <1466639694-25394-1-git-send-email-toshi.kani@hpe.com> X-Mailer: git-send-email 2.5.5 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch-set adds DAX support to device-mapper dm-linear devices used by LVM. It works with LVM commands as follows: - Creation of a logical volume with all DAX capable devices (such as pmem) sets the logical volume DAX capable as well. - Once a logical volume is set to DAX capable, the volume may not be extended with non-DAX capable devices. The direct_access interface is added to dm and dm-linear to map a request to a target device. The patches replace v1 series at: http://git.kernel.org/cgit/linux/kernel/git/snitzer/linux.git/log/?h=wip v2: - Fix issue with partitioning. - Change to add DAX flag to a request queue. --- Toshi Kani (3): 1/3 block: add QUEUE_FLAG_DAX for devices to advertise their DAX support 2/3 dm: add infrastructure for DAX support 3/3 dm linear: add DAX support --- drivers/block/brd.c | 4 +++- drivers/md/dm-linear.c | 23 ++++++++++++++++++++++- drivers/md/dm-table.c | 23 ++++++++++++++++++++--- drivers/md/dm.c | 36 +++++++++++++++++++++++++++++++++++- drivers/md/dm.h | 1 + drivers/nvdimm/pmem.c | 1 + drivers/s390/block/dcssblk.c | 1 + fs/block_dev.c | 5 +++-- include/linux/blkdev.h | 2 ++ include/linux/device-mapper.h | 16 ++++++++++++++++ 10 files changed, 104 insertions(+), 8 deletions(-)