[RFC] Refactor kenter/kleave/kdebug macros

Leon Romanovsky leon at leon.nu
Mon May 18 11:35:58 PDT 2015


On Mon, May 18, 2015 at 6:20 PM, David Howells <dhowells at redhat.com> wrote:
> Leon Romanovsky <leon at leon.nu> wrote:
>
>> >> Additionally, It looks like the output of these macros can be viewed by
>> >> ftrace mechanism.
>> >
>> > *blink* It can?
>> I was under strong impression that "function" and "function_graph"
>> tracers will give similar kenter/kleave information. Do I miss
>> anything important, except the difference in output format?
>>
>> >
>> >> Maybe we should delete them from mm/nommu.c as was pointed by Joe?
>> >
>> > Why?
>> If ftrace is sufficient to get the debug information, there will no
>> need to duplicate it.
>
> It isn't sufficient.  It doesn't store the parameters or the return value, it
> doesn't distinguish the return path in a function when there's more than one,
> eg.:
>
>                 kleave(" = %d [val]", ret);
>
> vs:
>
>         kleave(" = %lx", result);
>
> in do_mmap_pgoff() and it doesn't permit you to retrieve data from where the
> argument pointers that you don't have pointed to, eg.:
>
>         kenter("%p{%d}", region, region->vm_usage);
>
> David
Thanks you for explanation, I'll send the patch in near future.


-- 
Leon Romanovsky | Independent Linux Consultant
        www.leon.nu | leon at leon.nu



More information about the linux-afs mailing list