From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751941AbdDATKq (ORCPT ); Sat, 1 Apr 2017 15:10:46 -0400 Received: from mout.gmx.net ([212.227.17.21]:59680 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751829AbdDATKo (ORCPT ); Sat, 1 Apr 2017 15:10:44 -0400 Date: Sat, 1 Apr 2017 21:10:31 +0200 From: Helge Deller To: Linus Torvalds , linux-kernel@vger.kernel.org, linux-parisc@vger.kernel.org, James Bottomley , John David Anglin Cc: Al Viro Subject: [GIT PULL] parisc architecture fixes for 4.11-rc5 Message-ID: <20170401191031.GA18005@ls3530.fritz.box> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.8.0 (2017-02-23) X-Provags-ID: V03:K0:QsI/xpqcRtLMFDhygyir0p70klTMiGc1p4Xi06liCsYH2QVd5cF wxGITU4Rkd48PArIMNwi2xbhRRQp0Mw1lm+nH+koiIR0VPTfjngT8ErFn+mOgoEtriyfi2G H/H4R4HWmZNalxC5pXVew9HOYxxTT/0PlXi+yyhfTeXNk6s+4FH50CAqn9SwRdNUs/SQiR+ UL3FkvwwLeC3nl5iqjyNg== X-UI-Out-Filterresults: notjunk:1;V01:K0:ns9Zgg1YLUg=:txoswtgLnmJOyCpUWqtHTS 9V67oYyhz4D4IsycPB3uU6zl0M9m0VlrF/B+TD/kxKqL9ojGfOdQQgzjbzw/JDtbOf02v/Dwz DHK6/aJrW66pJK7wAT9GG5FkyrbL2JQ8rxGgPBkPYNDV19G3QWYWjZ8pgxWW8V8DK+EUEeT74 jEaHR2H9JUUZhpuqL9UZM8kK4VnfxQhqR+KCsLUtYLsJTTDGGsUvlkj8QFjlYu4Auo5jRWu6U Bbq62DZB4U2NVOvAGWj5l7cMGrvlkxzgnslhhIOs/WrIBpxg2bZHXV0iB4kgTRVceQ/fCz8JN ExMfxH/+jeR/D1Ri+Ap/B6eS89X3Z3JlOqib9+vawxjW+edX7ko52SpCWueEm3alhhDU5bpu4 ZRA8z2UswMgAycC3Qz26NtaBOssUjTC/KKwSbbNVeGz/ffon/nVfIawB1vN/+MH6A5nMewjN3 ku5+iHAZLDxJLnY2LXrcwRsD0Fis/t2+JL1lcEB19hR/kDBudFcnd1ZJFovpDwWVR5iCpWHkZ 2CRrIBXXxtiyAVKjUZLa0i5CAAK2O835v7FalOhTg6wS5vW/ECN3Z9EIdPI6fH+vMdXtYykGt Z5kPw9ncA3IfPxE5e+FU0U/EqmqWqVKAYo3cw3mGrlGYd2PpRsyEXkmVxRN9vuwzUD84cqJh+ 9oig2QEI0GADyuhBd19ScLgdDGK9p8kliMDLLrr/MhPinuzqEDYj5StT6PrMWa0XM5etNWQ1Z mAaYwNBP0Li/K3FBSWRaxTiu2CdCitIzLK7l3/Jyyh3uSwY4ueKzR+WdTII= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Linus, Please pull three fixes for the parisc architecture for v4.11-rc5 from git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux.git parisc-4.11-3 Al Viro reported that - in case of read faults - our copy_from_user() implementation may claim to have copied more bytes than it actually did. In order to fix this bug and because of the way how gcc optimizes register usage for inline assembly in C code, we had to replace our pa_memcpy() function with a pure assembler implementation. While fixing the memcpy bug we noticed some other issues with our get_user() and put_user() functions, e.g. nested faults may return wrong data. This is now fixed by a common fixup handler for get_user/put_user in the exception handler which additionally makes generated code smaller and faster. The third patch is a trivial one-line fix for a patch which went in during 4.11-rc and which avoids stalled CPU warnings after power shutdown (for parisc machines which can't plug power off themselves). Due to the rewrite of pa_memcpy() into assembly this patch got bigger than what I wanted to have sent at this stage. Those patches have been running in production during the last few days on our debian build servers without any further issues. Thanks, Helge ---------------------------------------------------------------- Helge Deller (3): parisc: Fix access fault handling in pa_memcpy() parisc: Clean up fixup routines for get_user()/put_user() parisc: Avoid stalled CPU warnings after system shutdown arch/parisc/include/asm/uaccess.h | 59 ++--- arch/parisc/kernel/parisc_ksyms.c | 10 - arch/parisc/kernel/process.c | 2 + arch/parisc/lib/Makefile | 2 +- arch/parisc/lib/fixup.S | 98 -------- arch/parisc/lib/lusercopy.S | 318 ++++++++++++++++++++++++++ arch/parisc/lib/memcpy.c | 461 +------------------------------------- arch/parisc/mm/fault.c | 17 ++ 8 files changed, 375 insertions(+), 592 deletions(-) delete mode 100644 arch/parisc/lib/fixup.S