Re: [PATCH v6 2/5] lazy tlb: allow lazy tlb mm refcounting to be configurable

Nadav Amit
2023-01-23T08:02:54Z

On 1/23/23 9:35 AM, Nadav Amit wrote:
>> +    if (IS_ENABLED(CONFIG_MMU_LAZY_TLB_REFCOUNT)) {
>> +        mmdrop(mm);
>> +    } else {
>> +        /*
>> +         * mmdrop_lazy_tlb must provide a full memory barrier, see the
>> +         * membarrier comment finish_task_switch which relies on this.
>> +         */
>> +        smp_mb();
>> +    }
>>   }
>
> Considering the fact that mmdrop_lazy_tlb() replaced mmdrop() in various
> locations in which smp_mb() was not required, this comment might be
> confusing. IOW, for the cases in most cases where mmdrop_lazy_tlb()
> replaced mmdrop(), this comment was irrelevant, and therefore it now
> becomes confusing.
>
> I am not sure the include the smp_mb() here instead of "open-coding" it
> helps.
I think that I now understand why you do need the smp_mb() here, so
ignore my comment.