[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <69fa8779-3433-9d35-a1f4-f115dc86c6d8@nvidia.com>
Date: Fri, 21 Feb 2020 16:15:27 -0800
From: John Hubbard <jhubbard@...dia.com>
To: Matthew Wilcox <willy@...radead.org>
CC: <linux-fsdevel@...r.kernel.org>, <linux-mm@...ck.org>,
<linux-kernel@...r.kernel.org>, <linux-btrfs@...r.kernel.org>,
<linux-erofs@...ts.ozlabs.org>, <linux-ext4@...r.kernel.org>,
<linux-f2fs-devel@...ts.sourceforge.net>,
<cluster-devel@...hat.com>, <ocfs2-devel@....oracle.com>,
<linux-xfs@...r.kernel.org>
Subject: Re: [PATCH v7 01/24] mm: Move readahead prototypes from mm.h
On 2/21/20 1:48 PM, Matthew Wilcox wrote:
> On Thu, Feb 20, 2020 at 06:43:31PM -0800, John Hubbard wrote:
>> Yes. But I think these files also need a similar change:
>>
>> fs/btrfs/disk-io.c
>
> That gets pagemap.h through ctree.h, so I think it's fine. It's
> already using mapping_set_gfp_mask(), so it already depends on pagemap.h.
>
>> fs/nfs/super.c
>
> That gets it through linux/nfs_fs.h.
>
> I was reluctant to not add it to blk-core.c because it doesn't seem
> necessarily intuitive that the block device core would include pagemap.h.
>
> That said, blkdev.h does include pagemap.h, so maybe I don't need to
> include it here.
OK. Looks good (either through blkdev.h or as-is), so:
Reviewed-by: John Hubbard <jhubbard@...dia.com>
>
>> ...because they also use VM_READAHEAD_PAGES, and do not directly include
>> pagemap.h yet.
>
>>> +#define VM_READAHEAD_PAGES (SZ_128K / PAGE_SIZE)
>>> +
>>> +void page_cache_sync_readahead(struct address_space *, struct file_ra_state *,
>>> + struct file *, pgoff_t index, unsigned long req_count);
>>
>> Yes, "struct address_space *mapping" is weird, but I don't know if it's
>> "misleading", given that it's actually one of the things you have to learn
>> right from the beginning, with linux-mm, right? Or is that about to change?
>>
>> I'm not asking to restore this to "struct address_space *mapping", but I thought
>> it's worth mentioning out loud, especially if you or others are planning on
>> changing those names or something. Just curious.
>
> No plans (on my part) to change the name, although I have heard people
> grumbling that there's very little need for it to be a separate struct
> from inode, except for the benefit of coda, which is not exactly a
> filesystem with a lot of users ...
>
> Anyway, no plans to change it. If there were something _special_ about
> it like a theoretical:
>
> void mapping_dedup(struct address_space *canonical,
> struct address_space *victim);
>
> then that's useful information and shouldn't be deleted. But I don't
> think the word 'mapping' there conveys anything useful (other than the
> convention is to call a 'struct address_space' a mapping, which you'll
> see soon enough once you look at any of the .c files).
>
OK, that's consistent and makes sense.
thanks,
--
John Hubbard
NVIDIA
Powered by blists - more mailing lists