Messages in this thread | | | Date | Mon, 3 Jun 2019 22:21:05 +0100 | From | Catalin Marinas <> | Subject | Re: [PATCH v5 3/3] arm64/fpsimd: Don't disable softirq when touching FPSIMD/SVE state |
| |
On Mon, Jun 03, 2019 at 05:25:34PM +0100, Catalin Marinas wrote: > On Tue, May 21, 2019 at 06:21:39PM +0100, Julien Grall wrote: > > Since a softirq is supposed to check may_use_simd() anyway before > > attempting to use FPSIMD/SVE, there is limited reason to keep softirq > > disabled when touching the FPSIMD/SVE context. Instead, we can simply > > disable preemption and mark the FPSIMD/SVE context as in use by setting > > CPU's fpsimd_context_busy flag. > [...] > > +static void get_cpu_fpsimd_context(void) > > +{ > > + preempt_disable(); > > + __get_cpu_fpsimd_context(); > > +} > > Is there anything that prevents a softirq being invoked between > preempt_disable() and __get_cpu_fpsimd_context()?
Actually, it shouldn't matter as the softirq finishes using the fpsimd before the thread is resumed.
-- Catalin
| |