* [PATCH] fs/userfaultfd: No need for gotos
@ 2020-06-06 15:02 Pavel Machek
0 siblings, 0 replies; only message in thread
From: Pavel Machek @ 2020-06-06 15:02 UTC (permalink / raw)
To: viro, linux-fsdevel, kernel list, trivial
[-- Attachment #1: Type: text/plain, Size: 1694 bytes --]
No need for gotos when all the target does is return. In this case it
also avoids redundant variable assignments.
Signed-off-by: Pavel Machek (CIP) <pavel@denx.de>
diff --git a/fs/userfaultfd.c b/fs/userfaultfd.c
index e39fdec8a0b0..860db4fd28dc 100644
--- a/fs/userfaultfd.c
+++ b/fs/userfaultfd.c
@@ -1883,12 +1883,10 @@ static int userfaultfd_api(struct userfaultfd_ctx *ctx,
int ret;
__u64 features;
- ret = -EINVAL;
if (ctx->state != UFFD_STATE_WAIT_API)
- goto out;
- ret = -EFAULT;
+ return -EINVAL;
if (copy_from_user(&uffdio_api, buf, sizeof(uffdio_api)))
- goto out;
+ return -EFAULT;
features = uffdio_api.features;
ret = -EINVAL;
if (uffdio_api.api != UFFD_API || (features & ~UFFD_API_FEATURES))
@@ -1899,20 +1897,18 @@ static int userfaultfd_api(struct userfaultfd_ctx *ctx,
/* report all available features and ioctls to userland */
uffdio_api.features = UFFD_API_FEATURES;
uffdio_api.ioctls = UFFD_API_IOCTLS;
- ret = -EFAULT;
if (copy_to_user(buf, &uffdio_api, sizeof(uffdio_api)))
- goto out;
+ return -EFAULT;
ctx->state = UFFD_STATE_RUNNING;
/* only enable the requested features for this uffd context */
ctx->features = uffd_ctx_features(features);
- ret = 0;
-out:
- return ret;
+ return 0;
+
err_out:
memset(&uffdio_api, 0, sizeof(uffdio_api));
if (copy_to_user(buf, &uffdio_api, sizeof(uffdio_api)))
- ret = -EFAULT;
- goto out;
+ return -EFAULT;
+ return ret;
}
static long userfaultfd_ioctl(struct file *file, unsigned cmd,
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2020-06-06 15:02 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-06-06 15:02 [PATCH] fs/userfaultfd: No need for gotos Pavel Machek
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.