[PATCH] mm/swapfile.c: remove unnecessary out label in __swap_duplicate()

From: Miaohe Lin
Date: Fri Oct 09 2020 - 09:04:25 EST


When the code went to the out label, it must have p == NULL. So what out
label really does is redundant if check and return err. We should Remove
this unnecessary out label because it does not handle resource free and so
on.

Signed-off-by: Miaohe Lin <linmiaohe@xxxxxxxxxx>
---
mm/swapfile.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/mm/swapfile.c b/mm/swapfile.c
index 06984de4cb9a..22c63beb10da 100644
--- a/mm/swapfile.c
+++ b/mm/swapfile.c
@@ -3441,11 +3441,11 @@ static int __swap_duplicate(swp_entry_t entry, unsigned char usage)
unsigned long offset;
unsigned char count;
unsigned char has_cache;
- int err = -EINVAL;
+ int err;

p = get_swap_device(entry);
if (!p)
- goto out;
+ return -EINVAL;

offset = swp_offset(entry);
ci = lock_cluster_or_swap_info(p, offset);
@@ -3492,7 +3492,6 @@ static int __swap_duplicate(swp_entry_t entry, unsigned char usage)

unlock_out:
unlock_cluster_or_swap_info(p, ci);
-out:
if (p)
put_swap_device(p);
return err;
--
2.19.1