From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from verein.lst.de ([213.95.11.211]:38394 "EHLO newverein.lst.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726325AbeJRWHD (ORCPT ); Thu, 18 Oct 2018 18:07:03 -0400 Date: Thu, 18 Oct 2018 16:05:51 +0200 From: Christoph Hellwig To: Matthew Wilcox Cc: Ming Lei , Jens Axboe , linux-block@vger.kernel.org, Vitaly Kuznetsov , Dave Chinner , Linux FS Devel , "Darrick J . Wong" , xfs@vger.kernel.org, Christoph Hellwig , Bart Van Assche Subject: Re: [PATCH 0/5] block: introduce helpers for allocating io buffer from slab Message-ID: <20181018140551.GA26500@lst.de> References: <20181018131817.11813-1-ming.lei@redhat.com> <20181018140342.GB32429@bombadil.infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20181018140342.GB32429@bombadil.infradead.org> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Thu, Oct 18, 2018 at 07:03:42AM -0700, Matthew Wilcox wrote: > Before we go down this road, could we have a discussion about what > hardware actually requires this? Storage has this weird assumption that > I/Os must be at least 512 byte aligned in memory, and I don't know where > this idea comes from. Network devices can do arbitrary byte alignment. > Even USB controllers can do arbitrary byte alignment. Sure, performance > is going to suck and there are definite risks on some architectures > with doing IOs that are sub-cacheline aligned, but why is storage such a > special snowflake that we assume that host controllers are only capable > of doing 512-byte aligned DMAs? Actually most storage controllers requires 4-byte alignment, but there is a significant subset that requires 512-byte alignment.