From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 71F7FC2D0A3 for ; Thu, 29 Oct 2020 19:34:57 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id D5ACA207BC for ; Thu, 29 Oct 2020 19:34:53 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="doC9htAO" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D5ACA207BC Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=infradead.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 965E56B0080; Thu, 29 Oct 2020 15:34:16 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 917CD6B0087; Thu, 29 Oct 2020 15:34:16 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7B8F46B0089; Thu, 29 Oct 2020 15:34:16 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0117.hostedemail.com [216.40.44.117]) by kanga.kvack.org (Postfix) with ESMTP id 3F6D76B0080 for ; Thu, 29 Oct 2020 15:34:16 -0400 (EDT) Received: from smtpin15.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id E0EF83628 for ; Thu, 29 Oct 2020 19:34:15 +0000 (UTC) X-FDA: 77425964070.15.jump96_050552027290 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin15.hostedemail.com (Postfix) with ESMTP id BE2ED1814B0C7 for ; Thu, 29 Oct 2020 19:34:15 +0000 (UTC) X-HE-Tag: jump96_050552027290 X-Filterd-Recvd-Size: 4612 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf04.hostedemail.com (Postfix) with ESMTP for ; Thu, 29 Oct 2020 19:34:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To: Content-Type:Content-ID:Content-Description; bh=m3kX9V2viinw8plXiDNypMDhWT98QwXvBE2VVZQYm9o=; b=doC9htAOcjqC5YmMj3f1l9fEap Yw01mYv9o8B6B3qb9NBzrw+7KgXRToZ8s6yVfYwM0dsNwWxTtvZnkWp2mnB8VxPpL/xiha4WVIv0+ SQM1fQlGcIXsPhoNsKbJ2gREyyBkbjc/l5HVrBXJtBCPVaj+J9irUeRlXnE5nJXI/rRvmTm3PcXTa rx/MhfqFeTzdZelRtjZFDxcAZy7G9p1s6Zox+D7DdFRZ+pYNOv/ShiuqAGOX6thgpuXd4cKC6b0yt md6Ymd+SyowMmar9IJ0jJeSrPPTLp/RQNLddGd1P1U04YVQVfrZQP+YmQ7gQ+O8JL1JXIGutPRuyA 5RwiUBqA==; Received: from willy by casper.infradead.org with local (Exim 4.92.3 #3 (Red Hat Linux)) id 1kYDgX-0007bf-0C; Thu, 29 Oct 2020 19:34:09 +0000 From: "Matthew Wilcox (Oracle)" To: linux-mm@kvack.org, linux-fsdevel@vger.kernel.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH 06/19] mm/filemap: Change calling convention for gfbr_ functions Date: Thu, 29 Oct 2020 19:33:52 +0000 Message-Id: <20201029193405.29125-7-willy@infradead.org> X-Mailer: git-send-email 2.21.3 In-Reply-To: <20201029193405.29125-1-willy@infradead.org> References: <20201029193405.29125-1-willy@infradead.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: gfbr_update_page() would prefer to have mapping passed to it than filp, as would gfbr_create_page(). That makes gfbr_read_page() retrieve the file pointer from the iocb. Signed-off-by: Matthew Wilcox (Oracle) --- mm/filemap.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/mm/filemap.c b/mm/filemap.c index 7bc791b47a68..1bfd87d85bfd 100644 --- a/mm/filemap.c +++ b/mm/filemap.c @@ -2176,9 +2176,10 @@ static int lock_page_for_iocb(struct kiocb *iocb, = struct page *page) return lock_page_killable(page); } =20 -static struct page *gfbr_read_page(struct kiocb *iocb, struct file *filp= , +static struct page *gfbr_read_page(struct kiocb *iocb, struct address_space *mapping, struct page *page) { + struct file *filp =3D iocb->ki_filp; struct file_ra_state *ra =3D &filp->f_ra; int error; =20 @@ -2228,11 +2229,10 @@ static struct page *gfbr_read_page(struct kiocb *= iocb, struct file *filp, return page; } =20 -static struct page *gfbr_update_page(struct kiocb *iocb, struct file *fi= lp, - struct iov_iter *iter, struct page *page, loff_t pos, - loff_t count) +static struct page *gfbr_update_page(struct kiocb *iocb, + struct address_space *mapping, struct iov_iter *iter, + struct page *page, loff_t pos, loff_t count) { - struct address_space *mapping =3D filp->f_mapping; struct inode *inode =3D mapping->host; int error; =20 @@ -2293,13 +2293,12 @@ static struct page *gfbr_update_page(struct kiocb= *iocb, struct file *filp, return page; } =20 - return gfbr_read_page(iocb, filp, mapping, page); + return gfbr_read_page(iocb, mapping, page); } =20 -static struct page *gfbr_create_page(struct kiocb *iocb, struct iov_iter= *iter) +static struct page *gfbr_create_page(struct kiocb *iocb, + struct address_space *mapping, struct iov_iter *iter) { - struct file *filp =3D iocb->ki_filp; - struct address_space *mapping =3D filp->f_mapping; pgoff_t index =3D iocb->ki_pos >> PAGE_SHIFT; struct page *page; int error; @@ -2318,7 +2317,7 @@ static struct page *gfbr_create_page(struct kiocb *= iocb, struct iov_iter *iter) return error !=3D -EEXIST ? ERR_PTR(error) : NULL; } =20 - return gfbr_read_page(iocb, filp, mapping, page); + return gfbr_read_page(iocb, mapping, page); } =20 static int gfbr_get_pages(struct kiocb *iocb, struct iov_iter *iter, @@ -2349,7 +2348,7 @@ static int gfbr_get_pages(struct kiocb *iocb, struc= t iov_iter *iter, if (nr_got) goto got_pages; =20 - pages[0] =3D gfbr_create_page(iocb, iter); + pages[0] =3D gfbr_create_page(iocb, mapping, iter); err =3D PTR_ERR_OR_ZERO(pages[0]); if (!IS_ERR_OR_NULL(pages[0])) nr_got =3D 1; @@ -2383,7 +2382,7 @@ static int gfbr_get_pages(struct kiocb *iocb, struc= t iov_iter *iter, break; } =20 - page =3D gfbr_update_page(iocb, filp, iter, page, + page =3D gfbr_update_page(iocb, mapping, iter, page, pg_pos, pg_count); if (IS_ERR_OR_NULL(page)) { for (j =3D i + 1; j < nr_got; j++) --=20 2.28.0