From: Qais Yousef <qais.yousef@arm.com> To: Will Deacon <will@kernel.org> Cc: Catalin Marinas <catalin.marinas@arm.com>, Marc Zyngier <maz@kernel.org>, "Peter Zijlstra (Intel)" <peterz@infradead.org>, Morten Rasmussen <morten.rasmussen@arm.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Linus Torvalds <torvalds@linux-foundation.org>, James Morse <james.morse@arm.com>, linux-arm-kernel@lists.infradead.org, linux-arch@vger.kernel.org Subject: Re: [RFC PATCH v2 4/4] arm64: Export id_aar64fpr0 via sysfs Date: Wed, 21 Oct 2020 17:07:30 +0100 [thread overview] Message-ID: <20201021160730.komcgrp7q2tly55w@e107158-lin> (raw) In-Reply-To: <20201021152310.GA18071@willie-the-truck> On 10/21/20 16:23, Will Deacon wrote: > > > If a cpumask is easier to implement and easier to use, then I think that's > > > what we should do. It's also then dead easy to disable if necessary by > > > just returning 0. The only alternative I would prefer is not having to > > > expose this information altogether, but I'm not sure that figuring this > > > out from MIDR/REVIDR alone is reliable. > > > > I did suggest this before, but I'll try gain. If we want to assume a custom > > bootloader and custom user space, we can make them provide the mask. > > Who mentioned a custom bootloader? In the context of Android, we're Custom bootloader as in a bootloader that needs to opt-in to enable the feature (pass the right cmdline param). Catalin suggested to make this a sysctl to allow also for runtime toggling. But the initial intention was to have this to enable it at cmdline. > talking about a user-space that already manages scheduling affinity. > > > For example, the new sysctl_enable_asym_32bit could be a cpumask instead of > > a bool as it currently is. Or we can make it a cmdline parameter too. > > In both cases some admin (bootloader or init process) has to ensure to fill it > > correctly for the target platform. The bootloader should be able to read the > > registers to figure out the mask. So more weight to make it a cmdline param. > > I think this is adding complexity for the sake of it. I'm much more in I actually think it reduces complexity. No special ABI to generate the mask from the kernel. The same opt-in flag is the cpumask too. > favour of keeping the implementation and ABI as simple as possible: expose > the fact that the system is heterogenous, have an opt-in for userspace to > say it can handle that and let it handle it. It still has to do that. It's just the origin of the cpumask will change. So it really depends how you view the opt-in. Ie: it needs to be discovered vs the user space knows it exists and it just wants to enable it. So far we've been going in the latter direction AFAICT. My current implementation is terrible for discovery. I don't feel strongly about it anyway. Just an idea. I can understand the lack of appeal. Not sure if there's a none ugly solution yet :-) Thanks -- Qais Yousef
WARNING: multiple messages have this Message-ID (diff)
From: Qais Yousef <qais.yousef@arm.com> To: Will Deacon <will@kernel.org> Cc: linux-arch@vger.kernel.org, Marc Zyngier <maz@kernel.org>, "Peter Zijlstra \(Intel\)" <peterz@infradead.org>, Catalin Marinas <catalin.marinas@arm.com>, James Morse <james.morse@arm.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Linus Torvalds <torvalds@linux-foundation.org>, Morten Rasmussen <morten.rasmussen@arm.com>, linux-arm-kernel@lists.infradead.org Subject: Re: [RFC PATCH v2 4/4] arm64: Export id_aar64fpr0 via sysfs Date: Wed, 21 Oct 2020 17:07:30 +0100 [thread overview] Message-ID: <20201021160730.komcgrp7q2tly55w@e107158-lin> (raw) In-Reply-To: <20201021152310.GA18071@willie-the-truck> On 10/21/20 16:23, Will Deacon wrote: > > > If a cpumask is easier to implement and easier to use, then I think that's > > > what we should do. It's also then dead easy to disable if necessary by > > > just returning 0. The only alternative I would prefer is not having to > > > expose this information altogether, but I'm not sure that figuring this > > > out from MIDR/REVIDR alone is reliable. > > > > I did suggest this before, but I'll try gain. If we want to assume a custom > > bootloader and custom user space, we can make them provide the mask. > > Who mentioned a custom bootloader? In the context of Android, we're Custom bootloader as in a bootloader that needs to opt-in to enable the feature (pass the right cmdline param). Catalin suggested to make this a sysctl to allow also for runtime toggling. But the initial intention was to have this to enable it at cmdline. > talking about a user-space that already manages scheduling affinity. > > > For example, the new sysctl_enable_asym_32bit could be a cpumask instead of > > a bool as it currently is. Or we can make it a cmdline parameter too. > > In both cases some admin (bootloader or init process) has to ensure to fill it > > correctly for the target platform. The bootloader should be able to read the > > registers to figure out the mask. So more weight to make it a cmdline param. > > I think this is adding complexity for the sake of it. I'm much more in I actually think it reduces complexity. No special ABI to generate the mask from the kernel. The same opt-in flag is the cpumask too. > favour of keeping the implementation and ABI as simple as possible: expose > the fact that the system is heterogenous, have an opt-in for userspace to > say it can handle that and let it handle it. It still has to do that. It's just the origin of the cpumask will change. So it really depends how you view the opt-in. Ie: it needs to be discovered vs the user space knows it exists and it just wants to enable it. So far we've been going in the latter direction AFAICT. My current implementation is terrible for discovery. I don't feel strongly about it anyway. Just an idea. I can understand the lack of appeal. Not sure if there's a none ugly solution yet :-) Thanks -- Qais Yousef _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-10-21 16:07 UTC|newest] Thread overview: 114+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-10-21 10:46 [RFC PATCH v2 0/4] Add support for Asymmetric AArch32 systems Qais Yousef 2020-10-21 10:46 ` Qais Yousef 2020-10-21 10:46 ` [RFC PATCH v2 1/4] arm64: kvm: Handle " Qais Yousef 2020-10-21 10:46 ` Qais Yousef 2020-10-21 12:02 ` Marc Zyngier 2020-10-21 12:02 ` Marc Zyngier 2020-10-21 13:35 ` Qais Yousef 2020-10-21 13:35 ` Qais Yousef 2020-10-21 13:51 ` Marc Zyngier 2020-10-21 13:51 ` Marc Zyngier 2020-10-21 14:38 ` Qais Yousef 2020-10-21 14:38 ` Qais Yousef 2020-11-02 17:58 ` Qais Yousef 2020-11-02 17:58 ` Qais Yousef 2020-10-21 10:46 ` [RFC PATCH v2 2/4] arm64: Add support for asymmetric AArch32 EL0 configurations Qais Yousef 2020-10-21 10:46 ` Qais Yousef 2020-10-21 15:39 ` Will Deacon 2020-10-21 15:39 ` Will Deacon 2020-10-21 16:21 ` Qais Yousef 2020-10-21 16:21 ` Qais Yousef 2020-10-21 16:52 ` Catalin Marinas 2020-10-21 16:52 ` Catalin Marinas 2020-10-21 17:39 ` Will Deacon 2020-10-21 17:39 ` Will Deacon 2020-10-22 9:53 ` Catalin Marinas 2020-10-22 9:53 ` Catalin Marinas 2020-10-21 10:46 ` [RFC PATCH v2 3/4] arm64: export emulate_sys_reg() Qais Yousef 2020-10-21 10:46 ` Qais Yousef 2020-10-21 10:46 ` [RFC PATCH v2 4/4] arm64: Export id_aar64fpr0 via sysfs Qais Yousef 2020-10-21 10:46 ` Qais Yousef 2020-10-21 11:09 ` Marc Zyngier 2020-10-21 11:09 ` Marc Zyngier 2020-10-21 11:25 ` Greg Kroah-Hartman 2020-10-21 11:25 ` Greg Kroah-Hartman 2020-10-21 11:46 ` Marc Zyngier 2020-10-21 11:46 ` Marc Zyngier 2020-10-21 12:11 ` Greg Kroah-Hartman 2020-10-21 12:11 ` Greg Kroah-Hartman 2020-10-21 13:18 ` Qais Yousef 2020-10-21 13:18 ` Qais Yousef 2020-10-21 12:15 ` Catalin Marinas 2020-10-21 12:15 ` Catalin Marinas 2020-10-21 13:20 ` Qais Yousef 2020-10-21 13:20 ` Qais Yousef 2020-10-21 13:33 ` Morten Rasmussen 2020-10-21 13:33 ` Morten Rasmussen 2020-10-21 14:09 ` Catalin Marinas 2020-10-21 14:09 ` Catalin Marinas 2020-10-21 14:41 ` Morten Rasmussen 2020-10-21 14:41 ` Morten Rasmussen 2020-10-21 14:45 ` Will Deacon 2020-10-21 14:45 ` Will Deacon 2020-10-21 15:10 ` Catalin Marinas 2020-10-21 15:10 ` Catalin Marinas 2020-10-21 15:37 ` Will Deacon 2020-10-21 15:37 ` Will Deacon 2020-10-21 16:18 ` Catalin Marinas 2020-10-21 16:18 ` Catalin Marinas 2020-10-21 17:19 ` Will Deacon 2020-10-21 17:19 ` Will Deacon 2020-10-22 9:55 ` Morten Rasmussen 2020-10-22 9:55 ` Morten Rasmussen 2020-10-21 14:31 ` Qais Yousef 2020-10-21 14:31 ` Qais Yousef 2020-10-22 10:16 ` Morten Rasmussen 2020-10-22 10:16 ` Morten Rasmussen 2020-10-22 10:48 ` Qais Yousef 2020-10-22 10:48 ` Qais Yousef 2020-10-21 14:41 ` Will Deacon 2020-10-21 14:41 ` Will Deacon 2020-10-21 15:03 ` Qais Yousef 2020-10-21 15:03 ` Qais Yousef 2020-10-21 15:23 ` Will Deacon 2020-10-21 15:23 ` Will Deacon 2020-10-21 16:07 ` Qais Yousef [this message] 2020-10-21 16:07 ` Qais Yousef 2020-10-21 17:23 ` Will Deacon 2020-10-21 17:23 ` Will Deacon 2020-10-21 19:57 ` Qais Yousef 2020-10-21 19:57 ` Qais Yousef 2020-10-21 20:26 ` Will Deacon 2020-10-21 20:26 ` Will Deacon 2020-10-22 8:16 ` Catalin Marinas 2020-10-22 8:16 ` Catalin Marinas 2020-10-22 9:58 ` Qais Yousef 2020-10-22 9:58 ` Qais Yousef 2020-10-22 13:47 ` Qais Yousef 2020-10-22 13:47 ` Qais Yousef 2020-10-22 13:55 ` Greg Kroah-Hartman 2020-10-22 13:55 ` Greg Kroah-Hartman 2020-10-22 14:31 ` Catalin Marinas 2020-10-22 14:31 ` Catalin Marinas 2020-10-22 14:34 ` Qais Yousef 2020-10-22 14:34 ` Qais Yousef 2020-10-26 19:02 ` Qais Yousef 2020-10-26 19:02 ` Qais Yousef 2020-10-26 19:08 ` Greg Kroah-Hartman 2020-10-26 19:08 ` Greg Kroah-Hartman 2020-10-26 19:18 ` Qais Yousef 2020-10-26 19:18 ` Qais Yousef 2020-10-21 11:28 ` Greg Kroah-Hartman 2020-10-21 11:28 ` Greg Kroah-Hartman 2020-10-21 13:22 ` Qais Yousef 2020-10-21 13:22 ` Qais Yousef 2020-10-21 11:26 ` [RFC PATCH v2 0/4] Add support for Asymmetric AArch32 systems Greg Kroah-Hartman 2020-10-21 11:26 ` Greg Kroah-Hartman 2020-10-21 13:15 ` Qais Yousef 2020-10-21 13:15 ` Qais Yousef 2020-10-21 13:31 ` Greg Kroah-Hartman 2020-10-21 13:31 ` Greg Kroah-Hartman 2020-10-21 13:55 ` Qais Yousef 2020-10-21 13:55 ` Qais Yousef 2020-10-21 14:35 ` Catalin Marinas 2020-10-21 14:35 ` Catalin Marinas
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=20201021160730.komcgrp7q2tly55w@e107158-lin \ --to=qais.yousef@arm.com \ --cc=catalin.marinas@arm.com \ --cc=gregkh@linuxfoundation.org \ --cc=james.morse@arm.com \ --cc=linux-arch@vger.kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=maz@kernel.org \ --cc=morten.rasmussen@arm.com \ --cc=peterz@infradead.org \ --cc=torvalds@linux-foundation.org \ --cc=will@kernel.org \ /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: linkBe 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.