lkml.org 
[lkml]   [2021]   [Apr]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Subject[PATCH v7 09/31] netfs, mm: Move PG_fscache helper funcs to linux/netfs.h
    From
    Date
    Move the PG_fscache related helper funcs (such as SetPageFsCache()) to
    linux/netfs.h rather than linux/fscache.h as the intention is to move to a
    model where they're used by the network filesystem and the helper library,
    but not by fscache/cachefiles itself.

    Signed-off-by: David Howells <dhowells@redhat.com>
    Tested-by: Jeff Layton <jlayton@kernel.org>
    Tested-by: Dave Wysochanski <dwysocha@redhat.com>
    Tested-By: Marc Dionne <marc.dionne@auristor.com>
    cc: Matthew Wilcox <willy@infradead.org>
    cc: linux-mm@kvack.org
    cc: linux-cachefs@redhat.com
    cc: linux-afs@lists.infradead.org
    cc: linux-nfs@vger.kernel.org
    cc: linux-cifs@vger.kernel.org
    cc: ceph-devel@vger.kernel.org
    cc: v9fs-developer@lists.sourceforge.net
    cc: linux-fsdevel@vger.kernel.org
    Link: https://lore.kernel.org/r/161340392347.1303470.18065131603507621762.stgit@warthog.procyon.org.uk/ # v3
    Link: https://lore.kernel.org/r/161539534516.286939.6265142985563005000.stgit@warthog.procyon.org.uk/ # v4
    Link: https://lore.kernel.org/r/161653792959.2770958.5386546945273988117.stgit@warthog.procyon.org.uk/ # v5
    Link: https://lore.kernel.org/r/161789073997.6155.18442271115255650614.stgit@warthog.procyon.org.uk/ # v6
    ---

    include/linux/fscache.h | 11 +----------
    include/linux/netfs.h | 29 +++++++++++++++++++++++++++++
    2 files changed, 30 insertions(+), 10 deletions(-)
    create mode 100644 include/linux/netfs.h

    diff --git a/include/linux/fscache.h b/include/linux/fscache.h
    index a1c928fe98e7..1f8dc72369ee 100644
    --- a/include/linux/fscache.h
    +++ b/include/linux/fscache.h
    @@ -19,6 +19,7 @@
    #include <linux/pagemap.h>
    #include <linux/pagevec.h>
    #include <linux/list_bl.h>
    +#include <linux/netfs.h>

    #if defined(CONFIG_FSCACHE) || defined(CONFIG_FSCACHE_MODULE)
    #define fscache_available() (1)
    @@ -29,16 +30,6 @@
    #endif


    -/*
    - * overload PG_private_2 to give us PG_fscache - this is used to indicate that
    - * a page is currently backed by a local disk cache
    - */
    -#define PageFsCache(page) PagePrivate2((page))
    -#define SetPageFsCache(page) SetPagePrivate2((page))
    -#define ClearPageFsCache(page) ClearPagePrivate2((page))
    -#define TestSetPageFsCache(page) TestSetPagePrivate2((page))
    -#define TestClearPageFsCache(page) TestClearPagePrivate2((page))
    -
    /* pattern used to fill dead space in an index entry */
    #define FSCACHE_INDEX_DEADFILL_PATTERN 0x79

    diff --git a/include/linux/netfs.h b/include/linux/netfs.h
    new file mode 100644
    index 000000000000..cc1102040488
    --- /dev/null
    +++ b/include/linux/netfs.h
    @@ -0,0 +1,29 @@
    +/* SPDX-License-Identifier: GPL-2.0-or-later */
    +/* Network filesystem support services.
    + *
    + * Copyright (C) 2021 Red Hat, Inc. All Rights Reserved.
    + * Written by David Howells (dhowells@redhat.com)
    + *
    + * See:
    + *
    + * Documentation/filesystems/netfs_library.rst
    + *
    + * for a description of the network filesystem interface declared here.
    + */
    +
    +#ifndef _LINUX_NETFS_H
    +#define _LINUX_NETFS_H
    +
    +#include <linux/pagemap.h>
    +
    +/*
    + * Overload PG_private_2 to give us PG_fscache - this is used to indicate that
    + * a page is currently backed by a local disk cache
    + */
    +#define PageFsCache(page) PagePrivate2((page))
    +#define SetPageFsCache(page) SetPagePrivate2((page))
    +#define ClearPageFsCache(page) ClearPagePrivate2((page))
    +#define TestSetPageFsCache(page) TestSetPagePrivate2((page))
    +#define TestClearPageFsCache(page) TestClearPagePrivate2((page))
    +
    +#endif /* _LINUX_NETFS_H */

    \
     
     \ /
      Last update: 2021-04-23 15:30    [W:2.252 / U:0.056 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site