Bug 4942
Summary: | SIGILL for host, nslookup, named, and the like on i386 NOT i486 | ||
---|---|---|---|
Product: | [Retired] Red Hat Linux | Reporter: | Marco Colombo <marco> |
Component: | bind | Assignee: | David Lawrence <dkl> |
Status: | CLOSED DEFERRED | QA Contact: | |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 6.0 | ||
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | i386 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 1999-09-07 12:58:49 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Marco Colombo
1999-09-06 21:00:18 UTC
bind (and ~8 other packages IIRC) were poisoned by a change in the definitions generated when invoked with "-m486". The change, defining __i486__, caused the inline assembly for ntohl/ntohs to use an i486 instruction that is illegal on i386 to be compiled in. The problem is (or will be) fixed in the compiler. Meanwhile, recompile bind (and other packages) from src.rpm's making sure that rpm optflags does not set -m486. Here's the list of affected packages: arpwatch-2.1a4-10 bind-8.2-6 bind-utils-8.2-6 dip-3.3.7o-14 dosemu-0.99.10-4 ftp-0.10-22 guavac-1.2-4 ipchains-1.3.8-3 knfsd-1.3.3-1 knfsd-clients-1.3.3-1 mars-nwe-0.99pl15-3 routed-0.10-14 rpm-3.0.1-12 rpm2html-1.1-2 strace-3.99-1 tcpdump-3.4-10 xboing-2.4-7 ytalk-3.1-3 Here's the script (from Alan Cox) that was used to detect "poisoned" i386 packages: #!/bin/sh for i in $*; do X=`file $i` echo -n $i case "$X" in *ELF*) (objdump --disassemble $i 2>/dev/null)|grep bswap >/tmp/x1 if [ -s /tmp/x1 ]; then echo " contaminated" else echo " ok" fi ;; *) echo " not ELF" esac done |