From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752921AbbHTX4j (ORCPT ); Thu, 20 Aug 2015 19:56:39 -0400 Received: from mga11.intel.com ([192.55.52.93]:32893 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751699AbbHTX4h (ORCPT ); Thu, 20 Aug 2015 19:56:37 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,717,1432623600"; d="scan'208";a="787877975" Date: Thu, 20 Aug 2015 23:56:36 +0000 (UTC) From: Keith Busch X-X-Sender: vmware@localhost.lm.intel.com To: Christoph Hellwig cc: Jens Axboe , linux-api@vger.kernel.org, dm-devel@redhat.com, linux-nvme@lists.infradead.org, linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: Persistent Reservation API V2 In-Reply-To: <1439360604-16192-1-git-send-email-hch@lst.de> Message-ID: References: <1439360604-16192-1-git-send-email-hch@lst.de> User-Agent: Alpine 2.00 (LNX 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 11 Aug 2015, Christoph Hellwig wrote: > This series adds support for a simplified Persistent Reservation API > to the block layer. The intent is that both in-kernel and userspace > consumers can use the API instead of having to hand craft SCSI or NVMe > command through the various pass through interfaces. It also adds > DM support as getting reservations through dm-multipath is a major > pain with the current scheme. > > NVMe support currently isn't included as I don't have a multihost > NVMe setup to test on, but Keith offered to test it and I'll have > a patch for it shortly. Hi Christoph, I wrote an nvme implementation and it seems to work as expected with your pr-tests (minor modification to open an nvme target). While API appears to work as designed, there are a few features of NVMe that are unreachable with it. For example, NVMe can ignore existing keys when acquiring a reservation in addition to registering a new key. NVMe can also specify if whether or not a reservation should persist through power-loss. Anyway, I don't think SCSI has these same options. Should this new IOCTL API accommodate the common subset to maintain its simplicity, or make it more expressive for all features? The more important question might be if there are any users requiring these features, and I honestly don't know that right now.