On Tue, May 12, 2026 at 07:35:21AM +0200, Christoph Hellwig wrote:
> Reflow setup_swap_extents so that the flag checking is not conditional on
> a swap_activate method.  This is currently a no-op because the swapoff
> code still checks the presence of a swap_deactivate method, but it
> simplifies adding a new check, and also makes the SWP_ACTIVATED flag
> more consistent.
> 
> Signed-off-by: Christoph Hellwig <[email protected]>
> ---
>  mm/swapfile.c | 23 +++++++++++------------
>  1 file changed, 11 insertions(+), 12 deletions(-)
> 
> diff --git a/mm/swapfile.c b/mm/swapfile.c
> index 651c1b59ff9f..1b7fc03612f4 100644
> --- a/mm/swapfile.c
> +++ b/mm/swapfile.c
> @@ -2783,25 +2783,24 @@ static int setup_swap_extents(struct swap_info_struct 
> *sis,
>  {
>       struct address_space *mapping = swap_file->f_mapping;
>       struct inode *inode = mapping->host;
> -     int ret;
> +     int ret, error = 0;

/me wonders why not reuse ret instead of declaring a new variable?

--D

>  
>       if (S_ISBLK(inode->i_mode))
>               return add_swap_extent(sis, sis->max, 0);
>  
> -     if (swap_file->f_op->swap_activate) {
> +     if (swap_file->f_op->swap_activate)
>               ret = swap_file->f_op->swap_activate(swap_file, sis);
> -             if (ret < 0)
> -                     return ret;
> -             sis->flags |= SWP_ACTIVATED;
> -             if ((sis->flags & SWP_FS_OPS) &&
> -                 sio_pool_init() != 0) {
> -                     destroy_swap_extents(sis, swap_file);
> -                     return -ENOMEM;
> -             }
> +     else
> +             ret = generic_swap_activate(swap_file, sis);
> +     if (ret < 0)
>               return ret;
> -     }
>  
> -     return generic_swap_activate(swap_file, sis);
> +     sis->flags |= SWP_ACTIVATED;
> +     if (sis->flags & SWP_FS_OPS)
> +             error = sio_pool_init();
> +     if (error)
> +             destroy_swap_extents(sis, swap_file);
> +     return error;
>  }
>  
>  static void _enable_swap_info(struct swap_info_struct *si)
> -- 
> 2.53.0
> 
> 


_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to