From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965800AbbD1NBJ (ORCPT ); Tue, 28 Apr 2015 09:01:09 -0400 Received: from bombadil.infradead.org ([198.137.202.9]:48446 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965457AbbD1NBG (ORCPT ); Tue, 28 Apr 2015 09:01:06 -0400 Date: Tue, 28 Apr 2015 06:01:04 -0700 From: Christoph Hellwig To: Dan Williams Cc: linux-nvdimm@ml01.01.org, Neil Brown , Greg KH , linux-kernel@vger.kernel.org Subject: Re: [Linux-nvdimm] [PATCH 19/21] nd: infrastructure for btt devices Message-ID: <20150428130104.GE30852@infradead.org> References: <20150418013256.25237.96403.stgit@dwillia2-desk3.amr.corp.intel.com> <20150418013655.25237.41353.stgit@dwillia2-desk3.amr.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150418013655.25237.41353.stgit@dwillia2-desk3.amr.corp.intel.com> User-Agent: Mutt/1.5.23 (2014-03-12) X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org See http://www.infradead.org/rpr.html Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Apr 17, 2015 at 09:36:55PM -0400, Dan Williams wrote: > Block devices from an nd bus, in addition to accepting "struct bio" > based requests, also have the capability to perform byte-aligned > accesses. By default only the bio/block interface is used. However, if > another driver can make effective use of the byte-aligned capability it > can claim/disable the block interface and use the byte-aligned "nd_io" > interface. > > The BTT driver is the intended first consumer of this mechanism to allow > layering atomic sector update guarantees on top of nd_io capable > nd-bus-block-devices. Please don't add any of the nd-specific hacks into the pmem driver. The rw_bytes functionality already is provided by the existing block level ->rw_page method which pmem already implements, and any sort of bus locking for different access methods should be in the bus glue, not in pmem.c