Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1666304

Re: [PATCH v2 05/10] x86/mm: Rework lazy TLB mode and TLB freshness tracking

From Andy Lutomirski <luto@kernel.org>
Newsgroups linux.kernel
Subject Re: [PATCH v2 05/10] x86/mm: Rework lazy TLB mode and TLB freshness tracking
Date 2017-06-15 00:50 +0200
Message-ID <tSpgR-2GV-9@gated-at.bofh.it> (permalink)
References <tS8zn-C4-9@gated-at.bofh.it> <tS8zn-C4-11@gated-at.bofh.it> <tSp7b-2DF-21@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Wed, Jun 14, 2017 at 3:33 PM, Dave Hansen <dave.hansen@intel.com> wrote:
> On 06/13/2017 09:56 PM, Andy Lutomirski wrote:
>> -     if (cpumask_test_cpu(cpu, &batch->cpumask))
>> +     if (cpumask_test_cpu(cpu, &batch->cpumask)) {
>> +             local_irq_disable();
>>               flush_tlb_func_local(&info, TLB_LOCAL_SHOOTDOWN);
>> +             local_irq_enable();
>> +     }
>> +
>
> Could you talk a little about why this needs to be local_irq_disable()
> and not preempt_disable()?  Is it about the case where somebody is
> trying to call flush_tlb_func_*() from an interrupt handler?

It's to prevent flush_tlb_func_local() and flush_tlb_func_remote()
from being run concurrently, which would cause flush_tlb_func_common()
to be reentered.  Either we'd need to be very careful in
flush_tlb_func_common() to avoid races if this happened, or we could
just disable interrupts around flush_tlb_func_local().  The latter is
fast and easy.

--Andy

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v2 05/10] x86/mm: Rework lazy TLB mode and TLB freshness tracking Andy Lutomirski <luto@kernel.org> - 2017-06-14 07:00 +0200
  Re: [PATCH v2 05/10] x86/mm: Rework lazy TLB mode and TLB freshness  tracking Juergen Gross <jgross@suse.com> - 2017-06-14 08:20 +0200
    Re: [PATCH v2 05/10] x86/mm: Rework lazy TLB mode and TLB freshness tracking Andy Lutomirski <luto@kernel.org> - 2017-06-20 00:10 +0200
  Re: [PATCH v2 05/10] x86/mm: Rework lazy TLB mode and TLB freshness  tracking Dave Hansen <dave.hansen@intel.com> - 2017-06-15 00:40 +0200
    Re: [PATCH v2 05/10] x86/mm: Rework lazy TLB mode and TLB freshness tracking Andy Lutomirski <luto@kernel.org> - 2017-06-15 00:50 +0200
  Re: [PATCH v2 05/10] x86/mm: Rework lazy TLB mode and TLB freshness  tracking Nadav Amit <nadav.amit@gmail.com> - 2017-06-18 10:10 +0200
    Re: [PATCH v2 05/10] x86/mm: Rework lazy TLB mode and TLB freshness tracking Andy Lutomirski <luto@kernel.org> - 2017-06-20 00:00 +0200

csiph-web