Subject: Re: [PATCH][RT][PPC64] Fix preempt unsafe paths accessing per_cpu variables

From: Chirag Jog <[email-masked]>
Date: Mon, 21 Jul 2008 15:53:39 +0530

Hi Benjamin

* Benjamin Herrenschmidt <[email-masked]> [2008-07-19 08:05:30]:

> 
> > With the original patch, the pending batch does get flushed 
> > in a non-preemptable region. 
> > I am resending the original with just adding the necesary comments.
> 
> Your comment isn't what I meant. What I meant is that if the process
> is context switched while walking the page tables, the low level powerpc
> context switch code should also perform a ???__flush_tlb_pending.
Sorry, I misunderstood.
The powerpc context switch code does perform a __flush_tlb_pending.
Here is the patch 
http://marc.info/?l=linux-kernel&m=119752629222720&w=2
> BTW. Is the pte_lock also not a real spinlock anymore ? That may break
> other assumptions the powerpc mm code is doing.
pte_lock is a not a real spinlock anymore.

> This -rt stuff is just too scary, it changes some fundamental semantics
> of the spinlocks. yuck.
> 
> Ben.
> 
>