> On Jul 19, 2019, at 11:36 AM, Dave Hansen <dave.han...@intel.com> wrote:
> 
> On 7/18/19 5:58 PM, Nadav Amit wrote:
>> @@ -865,7 +893,7 @@ void arch_tlbbatch_flush(struct 
>> arch_tlbflush_unmap_batch *batch)
>>      if (cpumask_test_cpu(cpu, &batch->cpumask)) {
>>              lockdep_assert_irqs_enabled();
>>              local_irq_disable();
>> -            flush_tlb_func_local(&full_flush_tlb_info);
>> +            flush_tlb_func_local((void *)&full_flush_tlb_info);
>>              local_irq_enable();
>>      }
> 
> This looks like superfluous churn.  Is it?

Unfortunately not, since full_flush_tlb_info is defined as const. Without it
you would get:

warning: passing argument 1 of ‘flush_tlb_func_local’ discards ‘const’ 
qualifier from pointer target type [-Wdiscarded-qualifiers]

And flush_tlb_func_local() should get (void *) argument since it is also
used by the SMP infrastructure.

Reply via email to