Florian Weimer kirjoitti:
* Juhana Helovuo:

Package: bind9
Version: 1:9.5.0.dfsg.P2-5.1
Followup-For: Bug #512285


The cause of this bug (#512285) seems to be bug in the implementation of atomic operations for the Alpha processor. Some of the parameters to the inline assembly operations are specified to be write-only (results), when they are in fact used in a read-write fashion. This causes the current gcc (4.2.4) to allocate some of the parameters into the same physical registers, causing unintentional aliasing.

Interesting, thanks.  Have you provided this information to upstream?

I suppose we could also use the __sync_* primitives, or libatomic-ops.


Yes, I reported this to bind9-bugs list at ISC also, but so far there is no (human) reply. I got ticket-id [ISC-Bugs #19227].

Furthermore, it seems that while my patch does help, it does not eliminate the problem. Named still crashes 1-2x / day due to the same assertion failing. Before the patch there were crashes about every two hours.

I have rebuilt bind9 source package with configure option "--disable-atomic", and I am running that version to see if it solves the problem.

If this helps, then it seems that there is still some unknown bug in the ISC atomic primitives for Alpha.


Other odd observations:

1. Named with threading allocates a lot of memory. Right after startup the process size is 148M virtual / 41M RSS. However, it does not seem to grow very much after that. rndc command reports 21 zones loaded, none of which is large.

2. One of the ISC atomic operation primitives, isc_atomic_store, seems strange, as I cannot understand how it produces different results from an ordinary (aligned) store instruction on Alpha.

Best Regards,
Juhana Helovuo



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to