Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp5218995ybl; Tue, 10 Dec 2019 02:31:08 -0800 (PST) X-Google-Smtp-Source: APXvYqzgssUNl2GeehNc9CmOg9FOvznv8S8hTnTZTNrItBjHcbWsul2CZy89MxrAMuS+PGlHplJ3 X-Received: by 2002:aca:5f87:: with SMTP id t129mr502038oib.36.1575973868494; Tue, 10 Dec 2019 02:31:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1575973868; cv=none; d=google.com; s=arc-20160816; b=LAssQdbaCpnvYhjv9z0tN+S1uq6mAgE5+lD0o5/CjTirgogEZv8+CWNqK26CwcwUo/ eoipIvF3Y2VqeAQiEDSwF3yE8XOPH/xkT3t2DEd1rnW2/lTUVrWJxx1x4zxxVVFdJ04h 5y8k8u4nWmFDICOwMk3IX7WeHhm0yhwHJ1MDHAjiSUU7MZtfpGcnai3iw6EEXIPhI1uq XE+lJ9VbEvtWxY1jf5FAqQnCU1UPBkfXVxEOJRS/kpuav8Bk183ZWYkLetvDTNk89eRC dn6OyJULFBFYVyX3Ff4/2Z8M/WEo3cUQRt/fS6GJ63h2vn5FraGYxq6Vc2tM5B3e0VlF M9EA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=jMWFdNn7fGRj5bb8TeBaOUbpmWFLdAqVHKxYwniQW98=; b=k4jQuq5h5EJc0uCcGC8iecYuoLWa4dZ8wa2HaLW8WKyDlPvE5eqdj+T4Lomv10aKGR OeRVFP7fYmhs1Sl4uLottvmHCmhmzxnvvRx665CmLPjFzHkQaMgVCzG60FQI8gI7k/LR nbW76tX2eo7sjvGGNrWjV7V5kmOs2CSH7/JEFOB2wcfmEnhss45jbyRWkNEDzU7csX8m DPPElYz2U9bHp7Jqbene5hWhhIIhJU29uLf9o62yxeEYWJCetkLDrteVvoy9OrFRgJ/g HgJ4mzxH0XwtNmIQS6f1sw2fjiOJIXOq4Zql3m9XO+evN5r10avNBKUnFXEyqrXzD1pV 5x1Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=Cbm2Nwyc; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h3si1699177otq.203.2019.12.10.02.30.55; Tue, 10 Dec 2019 02:31:08 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=Cbm2Nwyc; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727345AbfLJK3Z (ORCPT + 99 others); Tue, 10 Dec 2019 05:29:25 -0500 Received: from us-smtp-delivery-1.mimecast.com ([205.139.110.120]:33622 "EHLO us-smtp-1.mimecast.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727039AbfLJK3Z (ORCPT ); Tue, 10 Dec 2019 05:29:25 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1575973763; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jMWFdNn7fGRj5bb8TeBaOUbpmWFLdAqVHKxYwniQW98=; b=Cbm2NwycMmm6cKdeSEYJ4DrCKHteCgRBidmoKUUm2JOgihcEyIfa6NysVwGX/sGes9J19E 9Y9Za5idrtmyqUBGI7CVt1ttOy3HUcWUGgBCVpbF0Ag+wbI1yAVdu4g767rMTR/6n3G412 30VeLMFb2wf1gDhaElfweJ7/rjGSZG0= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-308-xB3QapzcOfqmzqUbwfKu9g-1; Tue, 10 Dec 2019 05:29:22 -0500 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id AC637183B72B; Tue, 10 Dec 2019 10:29:21 +0000 (UTC) Received: from max.com (ovpn-205-78.brq.redhat.com [10.40.205.78]) by smtp.corp.redhat.com (Postfix) with ESMTP id E385160568; Tue, 10 Dec 2019 10:29:17 +0000 (UTC) From: Andreas Gruenbacher To: "Darrick J. Wong" Cc: Andreas Gruenbacher , linux-xfs@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, cluster-devel@redhat.com Subject: [PATCH] iomap: Export iomap_page_create and iomap_set_range_uptodate Date: Tue, 10 Dec 2019 11:29:16 +0100 Message-Id: <20191210102916.842-1-agruenba@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-MC-Unique: xB3QapzcOfqmzqUbwfKu9g-1 X-Mimecast-Spam-Score: 0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org These two functions are needed by filesystems for converting inline ("stuffed") inodes into non-inline inodes. Signed-off-by: Andreas Gruenbacher --- fs/iomap/buffered-io.c | 6 ++++-- include/linux/iomap.h | 5 +++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/fs/iomap/buffered-io.c b/fs/iomap/buffered-io.c index 828444e14d09..e8f6d7ba4e3c 100644 --- a/fs/iomap/buffered-io.c +++ b/fs/iomap/buffered-io.c @@ -41,7 +41,7 @@ static inline struct iomap_page *to_iomap_page(struct pag= e *page) =20 static struct bio_set iomap_ioend_bioset; =20 -static struct iomap_page * +struct iomap_page * iomap_page_create(struct inode *inode, struct page *page) { =09struct iomap_page *iop =3D to_iomap_page(page); @@ -64,6 +64,7 @@ iomap_page_create(struct inode *inode, struct page *page) =09SetPagePrivate(page); =09return iop; } +EXPORT_SYMBOL(iomap_page_create); =20 static void iomap_page_release(struct page *page) @@ -164,7 +165,7 @@ iomap_iop_set_range_uptodate(struct page *page, unsigne= d off, unsigned len) =09spin_unlock_irqrestore(&iop->uptodate_lock, flags); } =20 -static void +void iomap_set_range_uptodate(struct page *page, unsigned off, unsigned len) { =09if (PageError(page)) @@ -175,6 +176,7 @@ iomap_set_range_uptodate(struct page *page, unsigned of= f, unsigned len) =09else =09=09SetPageUptodate(page); } +EXPORT_SYMBOL(iomap_set_range_uptodate); =20 static void iomap_read_finish(struct iomap_page *iop, struct page *page) diff --git a/include/linux/iomap.h b/include/linux/iomap.h index 8b09463dae0d..b00f9bc396b1 100644 --- a/include/linux/iomap.h +++ b/include/linux/iomap.h @@ -13,6 +13,7 @@ struct address_space; struct fiemap_extent_info; struct inode; +struct iomap_page; struct iomap_writepage_ctx; struct iov_iter; struct kiocb; @@ -152,6 +153,10 @@ loff_t iomap_apply(struct inode *inode, loff_t pos, lo= ff_t length, =09=09unsigned flags, const struct iomap_ops *ops, void *data, =09=09iomap_actor_t actor); =20 +struct iomap_page *iomap_page_create(struct inode *inode, struct page *pag= e); +void iomap_set_range_uptodate(struct page *page, unsigned off, unsigned le= n); + + ssize_t iomap_file_buffered_write(struct kiocb *iocb, struct iov_iter *fro= m, =09=09const struct iomap_ops *ops); int iomap_readpage(struct page *page, const struct iomap_ops *ops); --=20 2.20.1