On Sun, Dec 20, 2009 at 02:57:38AM +0300, Alexey Tourbin wrote: > On Sun, Dec 20, 2009 at 12:42:19AM +0300, Dmitry V. Levin wrote: > > On Sun, Dec 20, 2009 at 12:03:49AM +0300, Alexey Tourbin wrote: > > > On Sat, Dec 19, 2009 at 10:50:07PM +0300, Dmitry V. Levin wrote: > > > > On Sat, Dec 19, 2009 at 03:26:40AM +0300, Alexey Tourbin wrote: > > > > > So... new VERIFY_ELF_LINT method is ready, and in Sisyphus, it is going > > > > > to be enabled (lint=normal) by default. Shall I enable it for branch-5.1 > > > > > as well? > > > > > > > > Let's check whether eu-elflint has yet more false positives to be fixed. > > > > > > How do we check? Checking the existing (pre-compiled) packages is > > > useless, since most of them are compiled with older toolchain (and > > > most of the lint warnings will go away as packages are recompiled). > > > > For example, we could introduce this new check as "relaxed" and run > > a test rebuild. > > > > > Okay, probably I'm going to release 4.0.4-alt98.25 anyway. > > > > Next test rebuild is going to start now, but I can delay it to get new > > rpmbuild packaged first. > > 4.0.4-alt98.25 with lint=relaxed is in sisyphus. Actually it was 4.0.4-alt98.26. Test rebuild results (on i586) show that 26 of 9259 successfully rebuilt packages are reported to have eu-elflint --gnu-ld errors: Mesa-4:7.7-alt0.rc3 section [27] 'wtext' is both executable and writable verify-elf: WARNING: ./usr/lib/X11/libGL.so.1.2: eu-elflint failed alsa-firmware-1.0.20-alt1 invalid machine flags: 0x80000000 section [ 2] '.text' is executable in nonexecutable segment 1 loadable segment [8] is writable but contains no writable sections loadable segment [10] is writable but contains no writable sections verify-elf: WARNING: ./lib/firmware/mixart/miXart8.elf: eu-elflint failed verify-elf: WARNING: ./lib/firmware/mixart/miXart8.elf: STACK entry not found avr-libc-1:1.6.7-alt1 verify-elf: WARNING: ./usr/lib/avr/lib/avr25/crt86401.o: eu-elflint failed [106 lines skipped] verify-elf: WARNING: ./usr/lib/avr/lib/crttn861.o: eu-elflint failed cpuburn-1.4-alt5 loadable segment [1] is writable but contains no writable sections verify-elf: WARNING: ./usr/bin/burnBX: eu-elflint failed loadable segment [1] is writable but contains no writable sections verify-elf: WARNING: ./usr/bin/burnMMX: eu-elflint failed emacs23-23.1-alt1 section [ 5] '.dynsym': symbol 220: st_value out of bounds [...] section [ 5] '.dynsym': symbol 253: st_value out of bounds section [24] '.bss' has type NOBITS but is read from the file in segment of program header entry 2 verify-elf: WARNING: ./usr/bin/emacs23-athena: eu-elflint failed verify-elf: WARNING: ./usr/bin/emacs23-gtk: eu-elflint failed verify-elf: WARNING: ./usr/bin/emacs23-motif: eu-elflint failed verify-elf: WARNING: ./usr/bin/emacs23-nox: eu-elflint failed firebird-odbc-2.0.0147-alt1 section [ 7] '.rel.dyn': relocation 6361: relocation type invalid for the file type [...] section [ 7] '.rel.dyn': relocation 6987: relocation type invalid for the file type verify-elf: WARNING: ./usr/lib/libOdbcFb.so: eu-elflint failed the file containing the function 'IscDbcLibrary::Attachment::Attachment()' is not compiled with -fpic/-fPIC [...] the file containing the function 'typeinfo for OdbcJdbcLibrary::OdbcObject' is not compiled with -fpic/-fPIC verify-elf: WARNING: ./usr/lib/libOdbcFb.so: TEXTREL entry found: 0x00000000 glibc-6:2.10.1-alt8 loadable segment [1] is writable but contains no writable sections verify-elf: WARNING: ./sbin/glibc_preinstall: eu-elflint failed ipw3945d-1.7.22-alt1 program header entry 8: unknown program header entry type 0x65041580 verify-elf: WARNING: ./usr/sbin/ipw3945d: eu-elflint failed kexec-tools-2.0.1-alt1 loadable segment [1] is writable but contains no writable sections verify-elf: WARNING: ./usr/lib/kexec-tools/kexec_test: eu-elflint failed verify-elf: WARNING: ./usr/lib/kexec-tools/kexec_test: STACK entry not found klibc-1.5.15-alt4 loadable segment [3] is writable but contains no writable sections verify-elf: WARNING: ./lib/mkinitrd/klibc/bin/cat: eu-elflint failed [9 lines skipped] verify-elf: WARNING: ./lib/mkinitrd/klibc/bin/umount: eu-elflint failed loadable segment [3] is writable but contains no writable sections verify-elf: WARNING: ./usr/lib/klibc/bin/cat: eu-elflint failed [12 lines skipped] section [ 4] '.interp' present in object file section [ 4] '.interp' has SHF_ALLOC flag set but there is no loadable segment verify-elf: WARNING: ./usr/lib/klibc/lib/interp.o: eu-elflint failed libunwind-0.99-alt4 section [ 3] '.dynsym': symbol 28: symbol in dynamic symbol table with non-default visibility [...] section [ 3] '.dynsym': symbol 94: symbol in dynamic symbol table with non-default visibility verify-elf: WARNING: ./usr/lib/libunwind-ptrace.so.0.0.0: eu-elflint failed verify-elf: WARNING: ./usr/lib/libunwind-x86.so.7.0.0: eu-elflint failed verify-elf: WARNING: ./usr/lib/libunwind.so.7.0.0: eu-elflint failed libxine-1.1.16.3-alt1 section [ 3] '.dynsym': symbol 131: symbol in dynamic symbol table with non-default visibility [...] section [ 3] '.dynsym': symbol 515: symbol in dynamic symbol table with non-default visibility verify-elf: WARNING: ./usr/lib/libxine.so.1.26.1: eu-elflint failed mbrola-3.01-alt3.1 section [ 3] '.dynsym': symbol 4 does not fit completely in referenced section [ 8] '.init' section [ 3] '.dynsym': symbol 5 does not fit completely in referenced section [11] '.fini' verify-elf: WARNING: ./usr/bin/mbrola: eu-elflint failed minised-1.12-alt2 section [ 7] '.note': unknown object file note type 0 at offset 20 section [ 7] '.note': unknown object file note type 0 at offset 40 verify-elf: WARNING: ./usr/bin/minised: eu-elflint failed nbd-2.9.11-alt2 section [ 7] '.note': unknown object file note type 0 at offset 20 verify-elf: WARNING: ./usr/sbin/nbd-client.static: eu-elflint failed nvidia_glx_src_173.14.22-173.14.22-alt56 nvidia_glx_src_190.42-190.42-alt74 nvidia_glx_src_190.53-190.53-alt74 nvidia_glx_src_96.43.14-96.43.14-alt46 [elf files in these packages are FULL of various bugs, no reason to list them here] qemu-0.11.92-alt1 section [ 2] '.text' has wrong flags: expected ALLOC|EXECINSTR, is WRITE|ALLOC|EXECINSTR section [ 2] '.text' is both executable and writable verify-elf: WARNING: ./usr/share/qemu/openbios-ppc: eu-elflint failed verify-elf: WARNING: ./usr/share/qemu/openbios-sparc32: eu-elflint failed verify-elf: WARNING: ./usr/share/qemu/openbios-sparc64: eu-elflint failed qutim-3:0.2.0-alt1 section [ 7] '.rel.dyn': relocation 70: relocation type invalid for the file type [...] section [ 7] '.rel.dyn': relocation 95: relocation type invalid for the file type verify-elf: WARNING: ./usr/lib/qutim/libplugman.so: eu-elflint failed the file containing the function 'QZipWriter::QZipWriter(QIODevice*)' is not compiled with -fpic/-fPIC [...] the file containing the function 'QZipReader::count() const' is not compiled with -fpic/-fPIC verify-elf: WARNING: ./usr/lib/qutim/libplugman.so: TEXTREL entry found: 0x00000000 verify-elf: WARNING: ./usr/bin/qutim: RPATH entry found: /usr/lib scantailor-0.9.7.2-alt1 section [ 4] '.dynsym': symbol 1: local symbol outside range described in sh_info [...] section [ 4] '.dynsym': symbol 5: local symbol outside range described in sh_info section [ 6] '.gnu.version': symbol 1: local symbol with global scope [...] section [ 6] '.gnu.version': symbol 5: local symbol with global scope verify-elf: WARNING: ./usr/bin/scantailor: eu-elflint failed tuxvsclippy-0.2.5-alt2 verify-elf: WARNING: ./usr/lib/tuxvsclippy/sprite/counter.sprite: eu-elflint failed [16 lines skipped] verify-elf: WARNING: ./usr/lib/tuxvsclippy/sprite/wolk.sprite: eu-elflint failed [a LOT of various bugs] util-linux-2.16.1-alt3 loadable segment [1] is writable but contains no writable sections verify-elf: WARNING: ./sbin/nologin: eu-elflint failed verify-elf: WARNING: ./usr/bin/pause: eu-elflint failed virtualbox-3.0.10-alt1.1 verify-elf: WARNING: ./usr/lib/virtualbox/VBoxDD.so: eu-elflint failed [16 lines skipped] verify-elf: WARNING: ./usr/lib/virtualbox/VirtualBox.so: eu-elflint failed verify-elf: WARNING: ./usr/lib/virtualbox/components/VBoxC.so: eu-elflint failed verify-elf: WARNING: ./usr/lib/virtualbox/components/VBoxSVCM.so: eu-elflint failed [a LOT of various bugs] xorg-drv-rendition-1:4.2.2-alt1 unknown machine type 15666 invalid machine flags: 0x20000001 section [ 2] '.rodata' has wrong flags: expected ALLOC and possibly MERGE|STRINGS, is WRITE section [ 7] '.symtab': symbol 1: st_value out of bounds [...] section [ 7] '.symtab': symbol 5: st_value out of bounds verify-elf: WARNING: ./usr/lib/X11/modules/v10002d.uc: eu-elflint failed verify-elf: WARNING: ./usr/lib/X11/modules/v20002d.uc: eu-elflint failed -- ldv