lkml.org 
[lkml]   [2008]   [Feb]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH [RT] 11/14] optimize the !printk fastpath through the lock acquisition
Pavel Machek wrote:
> Hi!
>
>> Decorate the printk path with an "unlikely()"
>>
>> Signed-off-by: Gregory Haskins <ghaskins@novell.com>
>> ---
>>
>> kernel/rtmutex.c | 8 ++++----
>> 1 files changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
>> index 122f143..ebdaa17 100644
>> --- a/kernel/rtmutex.c
>> +++ b/kernel/rtmutex.c
>> @@ -660,12 +660,12 @@ rt_spin_lock_fastlock(struct rt_mutex *lock,
>> void fastcall (*slowfn)(struct rt_mutex *lock))
>> {
>> /* Temporary HACK! */
>> - if (!current->in_printk)
>> - might_sleep();
>> - else if (in_atomic() || irqs_disabled())
>> + if (unlikely(current->in_printk) && (in_atomic() || irqs_disabled()))
>> /* don't grab locks for printk in atomic */
>> return;
>>
>> + might_sleep();
>
> I think you changed the code here... you call might_sleep() in
> different cases afaict.

Agreed, but it's still correct afaict. I added an extra might_sleep()
to a path that really might sleep. I should have mentioned that in the
header.

In any case, its moot. Andi indicated this patch is probably a no-op so
I was considering dropping it on the v2 pass.

Regards,
-Greg





\
 
 \ /
  Last update: 2008-02-22 23:29    [W:0.142 / U:0.780 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site