List ecs-isp@2rosenthals.com Arkiverade meddelande #961

Från: "Steven Levine" <ecs-isp@2rosenthals.com> Meddelandehuvud
Oavkodat meddelande
Ämne: Re: [eCS-ISP] Updating bind
Datum: Tue, 22 Oct 2024 16:35:58 -0800
Till: "eCS ISP Mailing List" <ecs-isp@2rosenthals.com>

In <list-11130186@2rosenthals.com>, on 10/22/24
   at 07:07 PM, "Paul Smedley" <ecs-isp@2rosenthals.com> said:

Hi Paul,

>It's crashing here:
>https://github.com/isc-projects/bind9/blob/bind-9.18/lib/isc/trampoline.c#L112

>Not sure why yet....

That's odd.  The opimizer seems to be generating code that is hard to map
to the sources.  If you continue to have issues with this,  I can take a
look at a process dump which will show me a bit more context of how ESI
gets set.

What I think we have is

 0006DAB7 >MOV  EDX, [ESI]  (8b16) ; trampoline[i]
 0006DAB9  MOV  EAX, EBX    (89d8) ; i
 0006DABB  ADD  EBX, 0x1    (83c3 01) ; isc__trampoline_min = i + 1
 0006DABE  TEST EDX, EDX    (85d2) ; if trampoline[i] != NULL

and

EBX  : 00000001         ; i
EDI  : 00000041         ; isc__trampoline_max
ESI  : 00000004 ; pCurTrampoline

ESI should point the a trampoline element, but it doesn't.  It's almost as
if isc__trampoline_new is returning a null pointer, but I don't see how
this can happen.

If you decide to capture a process dump, use something like:

  pdumpctl -i f host

The f option requests a full dump which will be sufficient since the trap
is not in shared code.

Since this happens on startup, it might be easier to let the debugger show
you the trapping code.

Steven

--
----------------------------------------------------------------------
"Steven Levine" <steve53@earthlink.net>  Warp/DIY/BlueLion etc.
www.scoug.com www.arcanoae.com www.warpcave.com
----------------------------------------------------------------------


Prenumerera: Sändning, Uppsamling, Index.
Stoppa prenumeration
Meddelande till ListMaster