From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-it0-f68.google.com ([209.85.214.68]:54474 "EHLO mail-it0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751544AbeE3OmO (ORCPT ); Wed, 30 May 2018 10:42:14 -0400 Received: by mail-it0-f68.google.com with SMTP id 76-v6so8229226itx.4 for ; Wed, 30 May 2018 07:42:14 -0700 (PDT) From: Jens Axboe To: linux-fsdevel@vger.kernel.org Cc: viro@zeniv.linux.org.uk, akpm@linux-foundation.org Subject: [PATCHSET v3 0/4] Submit ->readpages() IO as read-ahead Date: Wed, 30 May 2018 08:42:05 -0600 Message-Id: <1527691329-2371-1-git-send-email-axboe@kernel.dk> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: The only caller of ->readpages() is from read-ahead, yet we don't submit IO flagged with REQ_RAHEAD. This means we don't see it in blktrace, for instance, which is a shame. We already make assumptions about ->readpages() just being for read-ahead in the mpage implementation, using readahead_gfp_mask(mapping) as out GFP mask of choice. This small series fixes up mpage_readpages() to submit with REQ_RAHEAD, which takes care of file systems using mpage_readpages(). The first patch is a prep patch, that makes do_mpage_readpage() take an argument structure. Changes since v2: - Get rid of 'gfp' passing once we have is_readahead - Pack struct better, makes it 8 bytes smaller. Changes since v1: - Fix ext4_mpage_readpages() also being used for regular reads - Add prep patch with struct arguments for do_mpage_readpage() fs/btrfs/extent_io.c | 2 +- fs/ext4/ext4.h | 2 +- fs/ext4/inode.c | 5 +- fs/ext4/readpage.c | 5 +- fs/mpage.c | 115 ++++++++++++++++++++++++------------------- 5 files changed, 71 insertions(+), 58 deletions(-)