BIND 9.6.1-P1 crashing

Dario Miculinic dario.miculinic at t-com.hr
Mon Jan 11 22:12:34 UTC 2010


I applied the patch.
As usually there was nothing in error logs.
"thread apply all bt full" result is in the attach.

./configure --disable-atomic [...other options] is not the options for us, because as u said it can increase load.

Best regards

JINMEI Tatuya / 神明達哉 wrote:
> At Tue, 05 Jan 2010 08:24:16 +0100,
> Dario Miculinic <dario.miculinic at t-com.hr> wrote:
> 
>> I dont't have the same core dump, but this is from one that happend yesterday:
> 
> Thanks, but unfortunately the detailed stack traces don't seem to
> provide a useful hint for the race.
> 
> If you can help debug this further, could you apply the patch copied
> below, rebuild named and run it?  It *may* catch the race condition at
> a closer point to the real cause.  (note: this patch only does
> diagnose, so it will not fix the problem).
> 
> Or, if you need any workaround that *may* work, you may want to
> rebuild named with disabling atomic operations.
> ./configure --disable-atomic [...other options]
> I'm not sure if this stops the problem, but I believe it's worth
> trying.
> 
> ---
> JINMEI, Tatuya
> Internet Systems Consortium, Inc.
> 
> Index: heap.c
> ===================================================================
> RCS file: /proj/cvs/prod/bind9/lib/isc/heap.c,v
> retrieving revision 1.37
> diff -u -r1.37 heap.c
> --- heap.c	19 Oct 2007 17:15:53 -0000	1.37
> +++ heap.c	8 Jan 2010 08:01:19 -0000
> @@ -149,10 +149,12 @@
>  	     i > 1 && heap->compare(elt, heap->array[p]) ;
>  	     i = p, p = heap_parent(i)) {
>  		heap->array[i] = heap->array[p];
> +		INSIST(heap->array[i] != NULL);
>  		if (heap->index != NULL)
>  			(heap->index)(heap->array[i], i);
>  	}
>  	heap->array[i] = elt;
> +	INSIST(heap->array[i] != NULL);
>  	if (heap->index != NULL)
>  		(heap->index)(heap->array[i], i);
>  
> @@ -173,11 +175,13 @@
>  		if (heap->compare(elt, heap->array[j]))
>  			break;
>  		heap->array[i] = heap->array[j];
> +		INSIST(heap->array[i] != NULL);
>  		if (heap->index != NULL)
>  			(heap->index)(heap->array[i], i);
>  		i = j;
>  	}
>  	heap->array[i] = elt;
> +	INSIST(heap->array[i] != NULL);
>  	if (heap->index != NULL)
>  		(heap->index)(heap->array[i], i);
>  
> @@ -217,6 +221,7 @@
>  
>  		less = heap->compare(elt, heap->array[index]);
>  		heap->array[index] = elt;
> +		INSIST(heap->array[index] != NULL);
>  		if (less)
>  			float_up(heap, index, heap->array[index]);
>  		else
> 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: dns_core_dump_detailed.TXT
URL: <https://lists.isc.org/pipermail/bind-users/attachments/20100111/a2021329/attachment.ksh>


More information about the bind-users mailing list