Re: [PATCH] swap: Check nrexceptional of swap cache before being freed
From: Huang, Ying
Date: Thu Jan 21 2021 - 19:03:18 EST
Matthew Wilcox <willy@xxxxxxxxxxxxx> writes:
> On Wed, Jan 20, 2021 at 03:27:11PM +0800, Huang Ying wrote:
>> To catch the error in updating the swap cache shadow entries or their count.
>
> I just resent a patch that removes nrexceptional tracking.
>
> Can you use !mapping_empty() instead?
Sure. Will use that in the next version.
Best Regards,
Huang, Ying
>> void exit_swap_address_space(unsigned int type)
>> {
>> - kvfree(swapper_spaces[type]);
>> + int i;
>> + struct address_space *spaces = swapper_spaces[type];
>> +
>> + for (i = 0; i < nr_swapper_spaces[type]; i++)
>> + VM_BUG_ON(spaces[i].nrexceptional);
>> + kvfree(spaces);
>> nr_swapper_spaces[type] = 0;
>> swapper_spaces[type] = NULL;
>> }
>> --
>> 2.29.2
>>
>>