All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Long <dave.long@linaro.org>
To: stable@vger.kernel.org,
	Russell King - ARM Linux <linux@armlinux.org.uk>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Julien Thierry <julien.thierry@arm.com>,
	Tony Lindgren <tony@atomide.com>,
	Marc Zyngier <marc.zyngier@arm.com>,
	Greg KH <gregkh@linuxfoundation.org>,
	Mark Rutland <mark.rutland@arm.com>
Cc: Will Deacon <will.deacon@arm.com>,
	Mark Brown <broonie@kernel.org>,
	linux-kernel@vger.kernel.org
Subject: [PATCH 4.19 04/17] ARM: 8792/1: oabi-compat: copy oabi events using __copy_to_user()
Date: Wed, 13 Feb 2019 16:32:10 -0500	[thread overview]
Message-ID: <20190213213223.916-5-dave.long@linaro.org> (raw)
In-Reply-To: <20190213213223.916-1-dave.long@linaro.org>

From: Julien Thierry <julien.thierry@arm.com>

Commit 319508902600c2688e057750148487996396e9ca upstream.

Copy events to user using __copy_to_user() rather than copy members of
individually with __put_user_error().
This has the benefit of disabling/enabling PAN once per event intead of
once per event member.

Signed-off-by: Julien Thierry <julien.thierry@arm.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: David A. Long <dave.long@linaro.org>
---
 arch/arm/kernel/sys_oabi-compat.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/arch/arm/kernel/sys_oabi-compat.c b/arch/arm/kernel/sys_oabi-compat.c
index f0dd4b6ebb63..40da0872170f 100644
--- a/arch/arm/kernel/sys_oabi-compat.c
+++ b/arch/arm/kernel/sys_oabi-compat.c
@@ -277,6 +277,7 @@ asmlinkage long sys_oabi_epoll_wait(int epfd,
 				    int maxevents, int timeout)
 {
 	struct epoll_event *kbuf;
+	struct oabi_epoll_event e;
 	mm_segment_t fs;
 	long ret, err, i;
 
@@ -295,8 +296,11 @@ asmlinkage long sys_oabi_epoll_wait(int epfd,
 	set_fs(fs);
 	err = 0;
 	for (i = 0; i < ret; i++) {
-		__put_user_error(kbuf[i].events, &events->events, err);
-		__put_user_error(kbuf[i].data,   &events->data,   err);
+		e.events = kbuf[i].events;
+		e.data = kbuf[i].data;
+		err = __copy_to_user(events, &e, sizeof(e));
+		if (err)
+			break;
 		events++;
 	}
 	kfree(kbuf);
-- 
2.17.1


  parent reply	other threads:[~2019-02-13 21:33 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-13 21:32 [PATCH 4.19 00/17] V4.19 backport of more 32-bit arm spectre patches David Long
2019-02-13 21:32 ` [PATCH 4.19 01/17] ARM: 8789/1: signal: copy registers using __copy_to_user() David Long
2019-02-13 21:32 ` [PATCH 4.19 02/17] ARM: 8790/1: signal: always use __copy_to_user to save iwmmxt context David Long
2019-02-13 21:32 ` [PATCH 4.19 03/17] ARM: 8791/1: vfp: use __copy_to_user() when saving VFP state David Long
2019-02-13 21:32 ` David Long [this message]
2019-02-13 21:32 ` [PATCH 4.19 05/17] ARM: 8793/1: signal: replace __put_user_error with __put_user David Long
2019-02-13 21:32 ` [PATCH 4.19 06/17] ARM: 8794/1: uaccess: Prevent speculative use of the current addr_limit David Long
2019-02-13 21:32 ` [PATCH 4.19 07/17] ARM: 8795/1: spectre-v1.1: use put_user() for __put_user() David Long
2019-02-13 21:32 ` [PATCH 4.19 08/17] ARM: 8796/1: spectre-v1,v1.1: provide helpers for address sanitization David Long
2019-02-13 21:32 ` [PATCH 4.19 09/17] ARM: 8797/1: spectre-v1.1: harden __copy_to_user David Long
2019-02-13 21:32 ` [PATCH 4.19 10/17] ARM: 8810/1: vfp: Fix wrong assignement to ufp_exc David Long
2019-02-13 21:32 ` [PATCH 4.19 11/17] ARM: make lookup_processor_type() non-__init David Long
2019-02-13 21:32 ` [PATCH 4.19 12/17] ARM: split out processor lookup David Long
2019-02-13 21:32 ` [PATCH 4.19 13/17] ARM: clean up per-processor check_bugs method call David Long
2019-02-13 21:32 ` [PATCH 4.19 14/17] ARM: add PROC_VTABLE and PROC_TABLE macros David Long
2019-02-13 21:32 ` [PATCH 4.19 15/17] ARM: spectre-v2: per-CPU vtables to work around big.Little systems David Long
2019-02-13 21:32 ` [PATCH 4.19 16/17] ARM: ensure that processor vtables is not lost after boot David Long
2019-02-13 21:32 ` [PATCH 4.19 17/17] ARM: fix the cockup in the previous patch David Long
2019-02-14  8:50 ` [PATCH 4.19 00/17] V4.19 backport of more 32-bit arm spectre patches Julien Thierry
2019-02-17 19:20 ` Sasha Levin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190213213223.916-5-dave.long@linaro.org \
    --to=dave.long@linaro.org \
    --cc=broonie@kernel.org \
    --cc=f.fainelli@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=julien.thierry@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=marc.zyngier@arm.com \
    --cc=mark.rutland@arm.com \
    --cc=stable@vger.kernel.org \
    --cc=tony@atomide.com \
    --cc=will.deacon@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.