From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Hellwig Subject: Re: [PATCH v3 1/7] bio: Introduce LightNVM payload Date: Tue, 12 May 2015 00:21:53 -0700 Message-ID: <20150512072153.GA25438@infradead.org> References: <1429712816-10336-1-git-send-email-m@bjorling.me> <1429712816-10336-2-git-send-email-m@bjorling.me> <20150509160007.GA16058@infradead.org> <5550997B.1000609@bjorling.me> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Christoph Hellwig , axboe@fb.com, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-nvme@lists.infradead.org, keith.busch@intel.com, javier@paletta.io To: Matias Bj?rling Return-path: Content-Disposition: inline In-Reply-To: <5550997B.1000609@bjorling.me> Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Mon, May 11, 2015 at 01:58:51PM +0200, Matias Bj?rling wrote: > >Can you explain why this needs to be done on a per-bio instead of a > >per-request level? I don't really think a low-level driver should add > >fields to struct bio as that can be easily remapped. > > When a bio is submitted through the block layer, it can be merged/splitted > on going through the block layer. Thus, we don't know the number of physical > addresses that must be mapped before its on the other side. For any sort of passthrough bios that should not be the case. It's not for BLOCK_PC, it's not for my new pass through NVMe commands and I don't think it should be in this case.