From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756529AbaISL0P (ORCPT ); Fri, 19 Sep 2014 07:26:15 -0400 Received: from bombadil.infradead.org ([198.137.202.9]:59141 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754988AbaISL0N (ORCPT ); Fri, 19 Sep 2014 07:26:13 -0400 Date: Fri, 19 Sep 2014 04:26:12 -0700 From: Christoph Hellwig To: Benjamin LaHaise Cc: Milosz Tanski , linux-kernel@vger.kernel.org, Christoph Hellwig , linux-fsdevel@vger.kernel.org, linux-aio@kvack.org, Mel Gorman , Volker Lendecke , Tejun Heo , Jeff Moyer , Andreas Dilger Subject: Re: [RFC 1/2] aio: async readahead Message-ID: <20140919112612.GC4639@infradead.org> References: <20140917144925.GU24821@kvack.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20140917144925.GU24821@kvack.org> 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 Requiring the block mappings to be entirely async is why we never went for full buffered aio. What would seem more useful is to offload all readahead to workqueues to make sure they never block the caller for sys_readahead or if we decide to readahead for the nonblocking read. I tried to implement this, but I couldn't find a good place to hang the work_struct for it off. If we decide to dynamically allocate the ra structure separate from struct file that might be an obvious place. From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Hellwig Subject: Re: [RFC 1/2] aio: async readahead Date: Fri, 19 Sep 2014 04:26:12 -0700 Message-ID: <20140919112612.GC4639@infradead.org> References: <20140917144925.GU24821@kvack.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Milosz Tanski , linux-kernel@vger.kernel.org, Christoph Hellwig , linux-fsdevel@vger.kernel.org, linux-aio@kvack.org, Mel Gorman , Volker Lendecke , Tejun Heo , Jeff Moyer , Andreas Dilger To: Benjamin LaHaise Return-path: Content-Disposition: inline In-Reply-To: <20140917144925.GU24821@kvack.org> Sender: owner-linux-aio@kvack.org List-Id: linux-fsdevel.vger.kernel.org Requiring the block mappings to be entirely async is why we never went for full buffered aio. What would seem more useful is to offload all readahead to workqueues to make sure they never block the caller for sys_readahead or if we decide to readahead for the nonblocking read. I tried to implement this, but I couldn't find a good place to hang the work_struct for it off. If we decide to dynamically allocate the ra structure separate from struct file that might be an obvious place. -- To unsubscribe, send a message with 'unsubscribe linux-aio' in the body to majordomo@kvack.org. For more info on Linux AIO, see: http://www.kvack.org/aio/ Don't email: aart@kvack.org