On Thu, May 11, 2017 at 12:13 AM, Ingo Molnar wrote:
> My personal favorite is double underscores prefix, i.e. 'void *__mm', which
> would
> clearly signal that this is something special. But this does not appear to
> have
> been picked up overly widely:
Nice bikeshed! I'll use it.
* Andy Lutomirski wrote:
> On Wed, May 10, 2017 at 1:24 AM, Ingo Molnar wrote:
> >
> > * Thomas Gleixner wrote:
> >
> >> On Wed, 10 May 2017, Ingo Molnar wrote:
> >> >
> >> > * Thomas Gleixner wrote:
> >> >
> >> > > On Sun, 7 May 2017, Andy Lutomirski wrote:
> >> > > > /* context.lock is hel
On Wed, May 10, 2017 at 1:24 AM, Ingo Molnar wrote:
>
> * Thomas Gleixner wrote:
>
>> On Wed, 10 May 2017, Ingo Molnar wrote:
>> >
>> > * Thomas Gleixner wrote:
>> >
>> > > On Sun, 7 May 2017, Andy Lutomirski wrote:
>> > > > /* context.lock is held for us, so we don't need any locking. */
>> >
* Thomas Gleixner wrote:
> On Wed, 10 May 2017, Ingo Molnar wrote:
> >
> > * Thomas Gleixner wrote:
> >
> > > On Sun, 7 May 2017, Andy Lutomirski wrote:
> > > > /* context.lock is held for us, so we don't need any locking. */
> > > > static void flush_ldt(void *current_mm)
> > > > {
> > >
On Wed, 10 May 2017, Ingo Molnar wrote:
>
> * Thomas Gleixner wrote:
>
> > On Sun, 7 May 2017, Andy Lutomirski wrote:
> > > /* context.lock is held for us, so we don't need any locking. */
> > > static void flush_ldt(void *current_mm)
> > > {
> > > + struct mm_struct *mm = current_mm;
> > >
* Thomas Gleixner wrote:
> On Sun, 7 May 2017, Andy Lutomirski wrote:
> > /* context.lock is held for us, so we don't need any locking. */
> > static void flush_ldt(void *current_mm)
> > {
> > + struct mm_struct *mm = current_mm;
> > mm_context_t *pc;
> >
> > - if (current->active_m
On Tue, May 9, 2017 at 1:41 PM, Thomas Gleixner wrote:
> On Sun, 7 May 2017, Andy Lutomirski wrote:
>> /* context.lock is held for us, so we don't need any locking. */
>> static void flush_ldt(void *current_mm)
>> {
>> + struct mm_struct *mm = current_mm;
>> mm_context_t *pc;
>>
>> -
On Sun, 7 May 2017, Andy Lutomirski wrote:
> /* context.lock is held for us, so we don't need any locking. */
> static void flush_ldt(void *current_mm)
> {
> + struct mm_struct *mm = current_mm;
> mm_context_t *pc;
>
> - if (current->active_mm != current_mm)
> + if (this_cpu_
Lazy TLB state is current managed in a rather baroque manner.
AFAICT, there are three possible states:
- Non-lazy. This means that we're running a user thread or a
kernel thread that has called use_mm(). current->mm ==
current->active_mm == cpu_tlbstate.active_mm and
cpu_tlbstate.state
9 matches
Mail list logo