Re: [PATCH 2/4] mm/swap: use SECTORS_PER_PAGE_SHIFT to clean up code

From: Leizhen (ThunderTown)
Date: Wed May 06 2020 - 05:16:13 EST




On 2020/5/6 11:47, Leizhen (ThunderTown) wrote:
>
>
> On 2020/5/6 9:33, Leizhen (ThunderTown) wrote:
>>
>>
>> On 2020/5/6 1:25, Matthew Wilcox wrote:
>>> On Tue, May 05, 2020 at 07:55:41PM +0800, Zhen Lei wrote:
>>>> +++ b/mm/swapfile.c
>>>> @@ -177,8 +177,8 @@ static int discard_swap(struct swap_info_struct *si)
>>>>
>>>> /* Do not discard the swap header page! */
>>>> se = first_se(si);
>>>> - start_block = (se->start_block + 1) << (PAGE_SHIFT - 9);
>>>> - nr_blocks = ((sector_t)se->nr_pages - 1) << (PAGE_SHIFT - 9);
>>>> + start_block = (se->start_block + 1) << SECTORS_PER_PAGE_SHIFT;
>>>> + nr_blocks = ((sector_t)se->nr_pages - 1) << SECTORS_PER_PAGE_SHIFT;
>>>
>>> Thinking about this some more, wouldn't this look better?
>>>
>>> start_block = page_sectors(se->start_block + 1);
>>> nr_block = page_sectors(se->nr_pages - 1);
>>>
>>
>> OKïThat's fine, it's clearer. And in this way, there won't be more than 80 columns.
>
> Should we rename "page_sectors" to "page_to_sectors"? Because we may need to define
> "sectors_to_page" also.

Change the "sectors_to_page" to "sectors_to_npage", npage means "number of pages"
or "page number". To distinguish the use case of "pfn_to_page()" etc. The latter
returns the pointer of "struct page".

>
>>
>>>
>>> .
>>>