From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 50EA5CF11F9 for ; Thu, 10 Oct 2024 14:31:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:In-Reply-To: Content-Transfer-Encoding:Content-Type:MIME-Version:References:Message-ID: Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=3At5dVj4t33J4waOW38XOA4KtkhXoc0tdeqH/X13qaw=; b=QIdpE+fTSsE17Pr81GP0NbvOE3 fLCefzoHCivLh/kPQv3r7+riZuPcf4bN5Y2XjoYGjO/7oIBjDcMelvsintRzbtxQLvA60u6Uw8AJ4 upGtZvTaCJoyBSZSeiDK0KZGctlND7nIiHqMoQeJGo3OU3c+Pic3ErXAeJNNhL0UMn10CgyH+Bu6k YPwpLDMp7jIge2ZjTJlgkSpGK37CBrBVWIF7qHs+9FWJKZB9W6BcFu4SEM+A5HtzGTbYLbe5z+CIL bDzUv/H9aLDGYq8F5FaejVdKCsubFNTKshfksdJRzCa6vGLrmS1qTCuSLp4FqLmM2FeZcWz5Y87Ll zqns48Og==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1syuC7-0000000D6te-3OIH; Thu, 10 Oct 2024 14:31:11 +0000 Received: from pandora.armlinux.org.uk ([2001:4d48:ad52:32c8:5054:ff:fe00:142]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1syst1-0000000Cqta-24Xs for linux-arm-kernel@lists.infradead.org; Thu, 10 Oct 2024 13:07:25 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=armlinux.org.uk; s=pandora-2019; h=Sender:In-Reply-To: Content-Transfer-Encoding:Content-Type:MIME-Version:References:Message-ID: Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=3At5dVj4t33J4waOW38XOA4KtkhXoc0tdeqH/X13qaw=; b=WEZg5zkty+Hus1IYYJ/ieHqlnq hT2akM7MI42YBu3nQRcUocW+A5gY/JAoT7Vj+ktinyn2hY4FUA2cIQtcx/ZEDa7lHz+uU7QXgagN7 BrW2fxW00LTkrHnKwWOZ+Bk9i38rCVYcZUdWnAxwO29qpsCaPePr3R2h1+Wk7ba75MwYUTB7y0MSd 1Bj7cjBxzkPzKqx3P4pI1skS/o/u3ErvInKOXifZ8d472rqwfg5w2tgYQ6C12oaIy5neNazYOPxDR TfvjO+9RiFwEreg0loBnf/AGXd5Btel/+OnPzdBi/6+9L83Audp/OmmHNxrZ44kcsnNfqY0stgLOZ hgPcmHtA==; Received: from shell.armlinux.org.uk ([fd8f:7570:feb6:1:5054:ff:fe00:4ec]:56804) by pandora.armlinux.org.uk with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1syssw-0002Qq-1f; Thu, 10 Oct 2024 14:07:18 +0100 Received: from linux by shell.armlinux.org.uk with local (Exim 4.96) (envelope-from ) id 1sysss-0007KE-0u; Thu, 10 Oct 2024 14:07:14 +0100 Date: Thu, 10 Oct 2024 14:07:14 +0100 From: "Russell King (Oracle)" To: Linus Walleij Cc: Oleg Nesterov , Kees Cook , Andy Lutomirski , Will Drewry , Frederic Weisbecker , "Paul E. McKenney" , Jinjie Ruan , Arnd Bergmann , Ard Biesheuvel , Al Viro , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH RFC 00/28] ARM: Switch to generic entry Message-ID: References: <20241010-arm-generic-entry-v1-0-b94f451d087b@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20241010_060723_594754_F05FBB30 X-CRM114-Status: GOOD ( 22.31 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Thu, Oct 10, 2024 at 02:11:09PM +0200, Linus Walleij wrote: > On Thu, Oct 10, 2024 at 1:55 PM Russell King (Oracle) > wrote: > > > I haven't looked at the series yet, but I guess we're throwing away > > all the effort I put in to make stuff like syscalls as fast as > > possible. > > > > So the question is... do we want performance, or do we want generic > > (and slower) code? > > Yes, the very same question that came to me as I was working on it, we > need to reach some conclusion here. Al Viro also put some nice > assembly optimizations in the syscall restart that just go out the > window as well. > > Some of the C interpersing relates to the RCU context tracking that > really likes to be called at every single IRQ, FIQ or SWI, and where ARM32 > is one of the few last users of the user_exit_callable()/user_enter_callable() > API which is obviously less intrusive as it only needs to get called > at transitions to/from userspace, while these calls are marked > with big block letters as obsolete in the context tracker. > > > It seems insane to me that we spend time micro-optimising things like > > memcpy, memset, divide routines, but then go and throw away performance > > that applications actually rely upon, such as syscall performance. > > Yes, this series is a real RFC in the true sense of the word. I think we need to quantify what the effect is on performance by making these changes, and I think we need to do more than just syscall entry/ exit performance, but the overall performance impact on userspace when the system is under a certain interrupt load. One of the things we have to remember is that applications like to endlessly get system time. Many of these other architectures that have been converted to this generic code support VDSO. However, 32-bit ARM generally does not have VDSO to avoid the syscall over head for e.g. gettimeofday(). So, we also need to time real workloads as well to properly understand what the effect of making these changes is. -- RMK's Patch system: https://www.armlinux.org.uk/developer/patches/ FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!