Subject: Re: [PATCH v2 06/25] powerpc32: iounmap() cannot vunmap() area mapped by TLBCAMs either

From: Christophe Leroy <[email-masked]>
Date: Tue, 6 Oct 2015 15:50:11 +0200

Le 29/09/2015 01:41, Scott Wood a écrit :
> On Tue, Sep 22, 2015 at 06:50:40PM +0200, Christophe Leroy wrote:
>> iounmap() cannot vunmap() area mapped by TLBCAMs either
>>
>> Signed-off-by: Christophe Leroy <[email-masked]>
>> ---
>> No change in v2
>>
>>   arch/powerpc/mm/pgtable_32.c | 4 +++-
>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/powerpc/mm/pgtable_32.c b/arch/powerpc/mm/pgtable_32.c
>> index 7692d1b..03a073a 100644
>> --- a/arch/powerpc/mm/pgtable_32.c
>> +++ b/arch/powerpc/mm/pgtable_32.c
>> @@ -278,7 +278,9 @@ void iounmap(volatile void __iomem *addr)
>>   	 * If mapped by BATs then there is nothing to do.
>>   	 * Calling vfree() generates a benign warning.
>>   	 */
>> -	if (v_mapped_by_bats((unsigned long)addr)) return;
>> +	if (v_mapped_by_bats((unsigned long)addr) ||
>> +	    v_mapped_by_tlbcam((unsigned long)addr))
>> +		return;
> This is pretty pointless given that the next patch replaces both with
> v_mapped_by_other().
>
>
I thought it was cleaner to first fix the bug, in order to make the 
following patch straight through, but I can skip it, no problem.

Christophe