Re: Using Instruction Pointer address in debug interfaces [Was: Re: vm_page_t related KBI [Was: Re: panic at vm_page_wire with FreeBSD 9.0 Beta 3]]

From: Andriy Gapon <avg_at_FreeBSD.org>
Date: Tue, 08 Nov 2011 22:55:59 +0200
[cc list trimmed]

on 08/11/2011 22:34 Attilio Rao said the following:
> 2011/11/8 Arnaud Lacombe <lacombar_at_gmail.com>:
>> To avoid future complaints about the fact that I would be only "talk"
>> without "action", I did implement what I suggested above. As it is
>> quite a large patch-set, I will not post it directly here, however, it
>> is available on github:
> 
> I really think that this is way too dependent by the good health of
> your tool, thus that is highly fragile.
> 
> However, you may have more luck by just the core of your kernel
> changes here, for comment and leave alone all the (ptr ->
> LOCK_FILE/LOCK_LINE conversion).
> 
> Said that, I think this logic is too fragile and likely won't be as
> effective as __FILE__/__LINE__ in many cases.

I agree.
If we were able to somehow automatically, magically, easily and correctly
determine an instruction pointer of a caller, then it would make sense to ditch
explicit passing of __FILE__/__LINE__ arguments in favor of doing instruction
pointer decoding.
But if we are just replacing explicit passing of (well-known) macros
__FILE__/__LINE__ with explicit passing of THIS_IP, then I don't see a point.

Apologies if I missed the rationale for this change.

-- 
Andriy Gapon
Received on Tue Nov 08 2011 - 19:56:04 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:20 UTC