Florian Boelstler | 24 Aug 17:49 2006
Picon

Lockmetering a custom kernel module

Hi,

I just tried lockmeter for some spinlocks introduced in a kernel module.
However I couldn't find the appropriate spinlock symbol in the output 
obtained by "lockstat print".

I got a lot of information about spinlocks used in "built-in" kernel 
drivers, etc.

Is it really true that lockmeter does not work for kernel modules loaded 
at runtime? Or is it "hidden" behind some symbol denoted by an address?

Thanks,

   Florian

Linux 2.6.17 on x86 SMP (with lockmeter patch 2.6.16)
lockstat 1.4.11

Florian Boelstler | 24 Aug 19:28 2006
Picon

Re: Lockmetering a custom kernel module

Florian Boelstler schrieb:
> Is it really true that lockmeter does not work for kernel modules loaded 
> at runtime? Or is it "hidden" behind some symbol denoted by an address?

Just wanted to let you know that when the driver is built into the 
kernel I get all expected spinlock profiles.

   Florian

John Hawkes | 26 Aug 00:11 2006
Picon

Re: Lockmetering a custom kernel module

From: "Florian Boelstler" <euphoria <at> arcor.de>
> Florian Boelstler schrieb:
>> Is it really true that lockmeter does not work for kernel modules loaded 
>> at runtime? Or is it "hidden" behind some symbol denoted by an address?
>
> Just wanted to let you know that when the driver is built into the kernel 
> I get all expected spinlock profiles.

Yes, this is true.  An already-built kernel module was compiled against the 
unpatched versions of routines like spin_lock() and spin_unlock() which 
don't perform any lockmetering.  It seems to me that a kernel module that is 
compiled against lockmeter-patched kernel source should link to the 
lockmeter'ing locking/unlocking routines.  Are you saying that these 
post-patch-built modules do not 'meter' correctly, either?

John Hawkes 


Gmane