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 X-Spam-Level: X-Spam-Status: No, score=-5.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 31D15C433DF for ; Fri, 9 Oct 2020 12:42:19 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D028B22284 for ; Fri, 9 Oct 2020 12:42:18 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="1LeuvPLE" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D028B22284 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:Message-ID: Subject: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=e3PlTpA9f6yvWK2W9RE/Lt1aQ6rtaAjTrldzH5IoZvI=; b=1LeuvPLEOhIDcGsDppr8RBEYZ qF2cDkNz9XeWUYNaHXlCem452gle+O/7sahlsmZsT0FbYYCQ7Gy1JMfcvhwEpX1RqNWwB950TE4b5 ed56HB1xWFdoiVz/gRGWA4/Yi+ADy9073Dt7l8cBN4RMhkvHnrvIkJ7yYyUxlqqXNMwxwkEViRW69 WsRmCLROXedgWwl9EVpbkqhEf1olb0CdFvcWmOU1wkxvpyZaKUZljQrvUjc/Q7MN1mOq5tLmrs6EE m99g92/UUnlfJ5cX6vEd34ORIT42yxL04g1VlMfYvPyYdcxvIbgTiSbBOxcZeDrO+GZcH5uNMEvrr e9kLDwYAQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kQrhY-0005Eh-E7; Fri, 09 Oct 2020 12:40:48 +0000 Received: from mail.kernel.org ([198.145.29.99]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kQrhI-00059C-7S for linux-arm-kernel@lists.infradead.org; Fri, 09 Oct 2020 12:40:33 +0000 Received: from gaia (unknown [95.149.105.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 6701222284; Fri, 9 Oct 2020 12:40:29 +0000 (UTC) Date: Fri, 9 Oct 2020 13:40:26 +0100 From: Catalin Marinas To: Qais Yousef Subject: Re: [RFC PATCH 3/3] arm64: Handle AArch32 tasks running on non AArch32 cpu Message-ID: <20201009124025.GH23638@gaia> References: <20201008181641.32767-1-qais.yousef@arm.com> <20201008181641.32767-4-qais.yousef@arm.com> <20201009072943.GD2628@hirez.programming.kicks-ass.net> <20201009081312.GA8004@e123083-lin> <20201009083146.GA29594@willie-the-truck> <20201009093340.GC23638@gaia> <20201009113155.to5euj6sekmwt7lg@e107158-lin.cambridge.arm.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20201009113155.to5euj6sekmwt7lg@e107158-lin.cambridge.arm.com> User-Agent: Mutt/1.10.1 (2018-07-13) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201009_084032_418326_3540995B X-CRM114-Status: GOOD ( 25.39 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-arch@vger.kernel.org, Peter Zijlstra , Greg Kroah-Hartman , Linus Torvalds , Marc Zyngier , Will Deacon , Morten Rasmussen , linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Fri, Oct 09, 2020 at 12:31:56PM +0100, Qais Yousef wrote: > On 10/09/20 10:33, Catalin Marinas wrote: > > On Fri, Oct 09, 2020 at 09:31:47AM +0100, Will Deacon wrote: > > > Honestly, I don't understand why we're trying to hide this asymmetry from > > > userspace by playing games with affinity masks in the kernel. Userspace > > > is likely to want to move things about _anyway_ because even amongst the > > > 32-bit capable cores, you may well have different clock frequencies to > > > contend with. > > > > > > So I'd be *much* happier to let the schesduler do its thing, and if one > > > of these 32-bit tasks ends up on a core that can't deal with it, then > > > tough, it gets killed. Give userspace the information it needs to avoid > > > that happening in the first place, rather than implicitly limit the mask. > > > > > > That way, the kernel support really boils down to two parts: > > > > > > 1. Remove the sanity checks we have to prevent 32-bit applications running > > > on asymmetric systems > > > > > > 2. Tell userspace about the problem > > > > This works for me as well as long as it is default off with a knob to > > turn it on. I'd prefer a sysctl (which can be driven from the command > > line in recent kernels IIRC) so that one can play with it a run-time. > > This way it's also a userspace choice and not an admin or whoever > > controls the cmdline (well, that's rather theoretical since the target > > is Android). > > I like the cmdline option more. It implies a custom bootloader and user space > are required to enable this. Which in return implies they can write their own > custom driver to manage exporting this info to user-space. Reliefing us from > maintaining any ABI in mainline kernel. Regardless of whether it's cmdline or sysctl, I'm strongly opposed to custom drivers for exposing this information to user. It leads to custom incompatible ABIs scattered around. Note that user can already check the MIDR_EL1 value if it knows which CPU type and revision has 32-bit support. -- Catalin _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel