Re: [PATCH] lockdep: be nice about building from userspace

From: Sasha Levin
Date: Thu Dec 13 2012 - 13:42:58 EST


Ping?

On Tue, Nov 20, 2012 at 1:40 AM, Sasha Levin <sasha.levin@xxxxxxxxxx> wrote:
> Ping?
>
> On 11/12/2012 03:50 PM, Sasha Levin wrote:
>> Lockdep is an awesome piece of code which detects locking issues which are
>> relevant both to userspace and kernelspace. We can easily make lockdep
>> work in userspace since there is really no kernel spacific magic going
>> on in the code.
>>
>> All we need is to wrap two functions which are used by lockdep and are
>> very kernel specific.
>>
>> Doing that will allow tools located in tools/ to easily utilize lockdep's
>> code for their own use.
>>
>> Signed-off-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
>> ---
>> kernel/lockdep.c | 4 ++++
>> 1 file changed, 4 insertions(+)
>>
>> diff --git a/kernel/lockdep.c b/kernel/lockdep.c
>> index 7981e5b..e898cfe 100644
>> --- a/kernel/lockdep.c
>> +++ b/kernel/lockdep.c
>> @@ -584,6 +584,7 @@ static int very_verbose(struct lock_class *class)
>> /*
>> * Is this the address of a static object:
>> */
>> +#ifdef __KERNEL__
>> static int static_obj(void *obj)
>> {
>> unsigned long start = (unsigned long) &_stext,
>> @@ -610,6 +611,7 @@ static int static_obj(void *obj)
>> */
>> return is_module_address(addr) || is_module_percpu_address(addr);
>> }
>> +#endif
>>
>> /*
>> * To make lock name printouts unique, we calculate a unique
>> @@ -4109,6 +4111,7 @@ void debug_check_no_locks_held(struct task_struct *task)
>> print_held_locks_bug(task);
>> }
>>
>> +#ifdef __KERNEL__
>> void debug_show_all_locks(void)
>> {
>> struct task_struct *g, *p;
>> @@ -4166,6 +4169,7 @@ retry:
>> read_unlock(&tasklist_lock);
>> }
>> EXPORT_SYMBOL_GPL(debug_show_all_locks);
>> +#endif
>>
>> /*
>> * Careful: only use this function if you are sure that
>>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/