[Devel] [PATCH 3/4] kasan: always taint kernel on report.

Andrey Ryabinin aryabinin at odin.com
Mon Sep 7 07:22:33 PDT 2015


On 09/07/2015 04:59 PM, Vladimir Davydov wrote:
> On Fri, Sep 04, 2015 at 05:06:15PM +0300, Andrey Ryabinin wrote:
> ...
>> diff --git a/mm/kasan/report.c b/mm/kasan/report.c
>> index ad69bac..17af572 100644
>> --- a/mm/kasan/report.c
>> +++ b/mm/kasan/report.c
>> @@ -212,6 +212,7 @@ static void kasan_report_error(struct kasan_access_info *info)
>>  	}
>>  	pr_err("================================="
>>  		"=================================\n");
>> +	add_taint(TAINT_BAD_PAGE, LOCKDEP_NOW_UNRELIABLE);
> 
> Do we really want to disable lockdep here?
> 

So LOCKDEP_STILL_OK is fine by me.

But note that when kasan hits the bug in PageSlab()
object_err() functions is called to print additional info.
And object_err() taints kernel with add_taint(TAINT_BAD_PAGE, LOCKDEP_NOW_UNRELIABLE);

So, I used LOCKDEP_NOW_UNRELIABLE just for consistency with object_err().



>>  	spin_unlock_irqrestore(&report_lock, flags);
>>  }
>>  



More information about the Devel mailing list