From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757278AbdELHSv (ORCPT ); Fri, 12 May 2017 03:18:51 -0400 Received: from zeniv.linux.org.uk ([195.92.253.2]:60766 "EHLO ZenIV.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757259AbdELHSs (ORCPT ); Fri, 12 May 2017 03:18:48 -0400 Date: Fri, 12 May 2017 08:15:49 +0100 From: Al Viro To: Ingo Molnar Cc: Andy Lutomirski , Christoph Hellwig , Greg KH , Thomas Garnier , Martin Schwidefsky , Heiko Carstens , Dave Hansen , Arnd Bergmann , Thomas Gleixner , David Howells , =?iso-8859-1?Q?Ren=E9?= Nyffenegger , Andrew Morton , "Paul E . McKenney" , "Eric W . Biederman" , Oleg Nesterov , Pavel Tikhomirov , Ingo Molnar , "H . Peter Anvin" , Paolo Bonzini , Rik van Riel , Kees Cook , Josh Poimboeuf , Borislav Petkov , Brian Gerst , "Kirill A . Shutemov" , Christian Borntraeger , Russell King , Will Deacon , Catalin Marinas , Mark Rutland , James Morse , linux-s390 , LKML , Linux API , the arch/x86 maintainers , "linux-arm-kernel@lists.infradead.org" , Kernel Hardening , Linus Torvalds , Peter Zijlstra Subject: Re: [kernel-hardening] Re: [PATCH v9 1/4] syscalls: Verify address limit before returning to user-mode Message-ID: <20170512071549.GP390@ZenIV.linux.org.uk> References: <20170428153213.137279-1-thgarnie@google.com> <20170508073352.caqe3fqf7nuxypgi@gmail.com> <20170508124621.GA20705@kroah.com> <20170509064522.anusoikaalvlux3w@gmail.com> <20170509085659.GA32555@infradead.org> <20170512070012.7dysuhbkcas7ibaj@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170512070012.7dysuhbkcas7ibaj@gmail.com> User-Agent: Mutt/1.8.0 (2017-02-23) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, May 12, 2017 at 09:00:12AM +0200, Ingo Molnar wrote: > > How about trying to remove all of them? If we could actually get rid > > of all of them, we could drop the arch support, and we'd get faster, > > simpler, shorter uaccess code throughout the kernel. > > I'm all for that! Oh, for... Ingo, do you really want to go through all ->write() and ->read() instances, converting all of them to iov_iter? Or, better yet, deal with the patch flood from Nick Krause sock puppet brigade? Folks, seriously, have you even looked through that zoo? I have, and it's really, really not fun. Sure, we can say "fuck 'em, no need to allow splice() on random crap". Would be perfectly reasonable, expect that it's not the only place doing kernel_write() and its ilk... And converting everything to ->read_iter()/->write_iter() means an insane amount of code churn, not to mention coping with random bogosities in semantics. ->read() and ->write() are going to stay around, pretty much indefinitely.