summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCesar Eduardo Barros <cesarb@cesarb.net>2011-03-22 16:33:18 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2011-03-22 17:44:06 -0700
commit2542e5134d2c19a9e6a4e641ef78cac6bccebd9b (patch)
treebcab086064e082d2b2275766327bb5518b81318f
parent53cbb2435f161f2a8b36af8f6d2c46dc59d0d757 (diff)
downloadlinux-3.10-2542e5134d2c19a9e6a4e641ef78cac6bccebd9b.tar.gz
linux-3.10-2542e5134d2c19a9e6a4e641ef78cac6bccebd9b.tar.bz2
linux-3.10-2542e5134d2c19a9e6a4e641ef78cac6bccebd9b.zip
sys_swapon: simplify error return from swap_info allocation
At this point in sys_swapon, there is nothing to free. Return directly instead of jumping to the cleanup block at the end of the function. Signed-off-by: Cesar Eduardo Barros <cesarb@cesarb.net> Tested-by: Eric B Munson <emunson@mgebm.net> Acked-by: Eric B Munson <emunson@mgebm.net> Reviewed-by: Pekka Enberg <penberg@kernel.org> Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Cc: Hugh Dickins <hughd@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--mm/swapfile.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/mm/swapfile.c b/mm/swapfile.c
index 6d1c3c67ae6..4d457d699c1 100644
--- a/mm/swapfile.c
+++ b/mm/swapfile.c
@@ -1918,10 +1918,8 @@ SYSCALL_DEFINE2(swapon, const char __user *, specialfile, int, swap_flags)
return -EPERM;
p = alloc_swap_info();
- if (IS_ERR(p)) {
- error = PTR_ERR(p);
- goto out;
- }
+ if (IS_ERR(p))
+ return PTR_ERR(p);
name = getname(specialfile);
error = PTR_ERR(name);