Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 93460 - cmucl-19a-r1 fails to emerge under a hardened kernel
Summary: cmucl-19a-r1 fails to emerge under a hardened kernel
Status: RESOLVED DUPLICATE of bug 140100
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Lisp Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-21 12:14 UTC by Ben Schwartz
Modified: 2006-09-03 02:39 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Schwartz 2005-05-21 12:14:25 UTC
cmucl-19a-r1 does not emerge.  While emerge is running the temporary lisp
executable via build-world.sh, it is killed for violating Grsec/PaX restrictions.

Reproducible: Always
Steps to Reproduce:
1. CFLAGS="-O2 -pipe" LDFLAGS="" emerge cmucl
2. It doesn't work.

Actual Results:  
; [GC completed with 8,277,192 bytes retained and 12,006,024 bytes freed.]
; [GC will next occur when at least 20,277,192 bytes are in use.]
; [GC threshold exceeded with 20,292,776 bytes in use.  Commencing GC.]
; [GC completed with 8,287,248 bytes retained and 12,005,528 bytes freed.]
; [GC will next occur when at least 20,287,248 bytes are in use.]
; [GC threshold exceeded with 20,303,368 bytes in use.  Commencing GC.]
; [GC completed with 8,309,584 bytes retained and 11,993,784 bytes freed.]
; [GC will next occur when at least 20,309,584 bytes are in use.]
; [GC threshold exceeded with 20,320,888 bytes in use.  Commencing GC.]
; [GC completed with 8,319,376 bytes retained and 12,001,512 bytes freed.]
; [GC will next occur when at least 20,319,376 bytes are in use.]
[Building Initial Core File (version 1) in file "target:lisp/kernel.core": 
Writing 4096 bytes [1 page] from :READ-ONLY space
Writing 4096 bytes [1 page] from :STATIC space
Writing 13692928 bytes [3343 pages] from :DYNAMIC space
done]
T
* ./src/tools/load-world.sh target "CVS release-19a 19a-release-20040728 + minim
al debian patches" 
./src/tools/load-world.sh: line 32: 14627 Killed                  $TARGET/lisp/l
isp -core $TARGET/lisp/kernel.core  <<EOF
(in-package :cl-user)

(setf (ext:search-list "target:")
      '("$TARGET/" "src/"))

(load "target:setenv")

(pushnew :no-clx *features*)
(pushnew :no-clm *features*)
(pushnew :no-hemlock *features*)

(load "target:tools/worldload")
$2

EOF

make: *** [all] Error 137

!!! ERROR: dev-lisp/cmucl-19a-r1 failed.
!!! Function src_compile, Line 46, Exitcode 2
!!! (no error message)

Expected Results:  
installed

 # emerge info
Portage 2.0.51.19 (default-linux/x86/2005.0, gcc-3.3.5-20050130,
glibc-2.3.4.20041102-r1, 2.6.11-hardened-r1 i686)
=================================================================
System uname: 2.6.11-hardened-r1 i686 Intel(R) Pentium(R) 4 CPU 2.80GHz
Gentoo Base System version 1.4.16
Python:              dev-lang/python-2.2.3-r1,dev-lang/python-2.3.5 [2.3.5 (#1,
Apr 30 2005, 01:51:03)]
ccache version 2.3 [enabled]
dev-lang/python:     2.2.3-r1, 2.3.5
sys-apps/sandbox:    [Not Present]
sys-devel/autoconf:  2.59-r6, 2.13
sys-devel/automake:  1.8.5-r3, 1.5, 1.6.3, 1.9.5, 1.4_p6, 1.7.9-r1
sys-devel/binutils:  2.15.92.0.2-r7
sys-devel/libtool:   1.5.16
virtual/os-headers:  2.6.8.1-r1, 2.6.8.1-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe
-fomit-frame-pointer -ftracer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.2/share/config
/usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown
/usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config
/usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O3 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe
-fomit-frame-pointer -ftracer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig candy ccache distlocks fixpackages prelink
sandbox sfperms strict usersandbox"
GENTOO_MIRRORS="http://www.mirror.ac.uk/mirror/distro.ibiblio.org/pub/linux/distributions/gentoo/
rsync://darkstone.rdg.ac.uk/gentoo-portage ftp://ftp.heanet.ie/pub/gentoo/"
LDFLAGS=" -Wl,-O1 -Wl,--enable-new-dtags"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X Xaw3d aac aalib acl aim alsa apache2 apm ared atlas auctex audiofile
avi berkdb bitmap-fonts bzlib cdparanoia cdr crypt cups curl dga directfb
divx4linux dlloader doc dvd dvdread edl emacs emboss encode esd exif fam fbcon
fftw fla flac foomaticdb fortran freetype ftp gb gd gdbm ggi gif ginac gmp gpm
gtk gtk2 guile hardened hardenedphp icq imagemagick imap imlib ipv6 jabber jack
java jikes jit jpeg junit kerberos krb4 ladcca lcms ldap libcaca libg++ libwww
mad matroska mbox mikmod mime ming mjpeg mmx mmx2 mmxext mng motif mozsvg mp3
mpeg msn mysql ncurses network nls nptl nptlonly offensive ogg oggvorbis opengl
oscar pam pdflib perl pic pie plotutils png pnp posix python quicktime readline
real sdl session silc slang softmmu speex spell sse sse2 ssl svg svgalib sysvipc
tcpd tetex theora tidy tiff truetype truetype-fonts type1-fonts usb videos
vorbis win32codecs wmf wxwindows xanim xine xinerama xml xml2 xmms xpm xv xvid
yahoo zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LINGUAS

/var/log/current/everything:
many lines like:
May 21 19:36:53 [kernel] grsec: signal 11 sent to
/var/tmp/portage/cmucl-19a-r1/work/bin/lisp[lisp:11100] uid/euid:0/0
gid/egid:0/0, parent
/var/tmp/portage/cmucl-19a-r1/work/cmucl-19a-release-20040728.orig/src/tools/build-world.sh[build-world.sh:17895]
uid/euid:0/0 gid/egid:0/0
                - Last output repeated 4 times -
May 21 19:36:53 [kernel] grsec: more alerts, logging disabled for 10 seconds

ending with:

May 21 19:38:05 [kernel] grsec: signal 11 sent to
/var/tmp/portage/cmucl-19a-r1/work/bin/lisp[lisp:11100] uid/euid:0/0
gid/egid:0/0, parent
/var/tmp/portage/cmucl-19a-r1/work/cmucl-19a-release-20040728.orig/src/tools/build-world.sh[build-world.sh:17895]
uid/euid:0/0 gid/egid:0/0
                - Last output repeated 4 times -
May 21 19:38:05 [kernel] grsec: more alerts, logging disabled for 10 seconds
May 21 19:38:15 [kernel] grsec: signal 11 sent to
/var/tmp/portage/cmucl-19a-r1/work/bin/lisp[lisp:24839] uid/euid:0/0
gid/egid:0/0, parent
/var/tmp/portage/cmucl-19a-r1/work/cmucl-19a-release-20040728.orig/src/tools/build-world.sh[build-world.sh:17994]
uid/euid:0/0 gid/egid:0/0
                - Last output repeated 4 times -
May 21 19:38:15 [kernel] grsec: more alerts, logging disabled for 10 seconds
May 21 19:38:17 [kernel] PAX: execution attempt in: <anonymous mapping>,
10000000-1ffff000 10000000
May 21 19:38:17 [kernel] PAX: terminating task: <NULL>(lisp):14627, uid/euid:
0/0, PC: 13ecb978, SP: 59f6af30

Presumably the fix is to have the ebuild 'paxctl -(pemrxs as necessary)' the
temporary executable.
Comment 1 Kevin F. Quinn (RETIRED) gentoo-dev 2005-07-26 15:51:22 UTC
Hmm; had a quick go at this - added a 'chpax -pemsrx bin/lisp' at the end of
src_unpack, and patched the main Makefile to do 'paxctl -pemsrx
target/lisp/lisp' between running build-world.sh (second occurrence) and
load-world.sh (doing just '-m', which is all it should need for anonymous maps,
didn't prevent it being killed by pax).

The build progressed further, but went into an infinite loop:

...
target:hemlock/kbdmac
target:hemlock/bindings
target:hemlock/hacks
;; Loading
#p"/var/tmp/portage/cmucl-19a-r1/work/cmucl-19a-release-20040728.orig/target/hemlock/spell-rt.x86f".
;; Loading
#p"/var/tmp/portage/cmucl-19a-r1/work/cmucl-19a-release-20040728.orig/target/hemlock/spell-corr.x86f".
;; Loading
#p"/var/tmp/portage/cmucl-19a-r1/work/cmucl-19a-release-20040728.orig/target/hemlock/spell-aug.x86f".
;; Loading
#p"/var/tmp/portage/cmucl-19a-r1/work/cmucl-19a-release-20040728.orig/target/hemlock/spell-build.x86f".
Reading dictionary ...
Writing dictionary ...
15505 entries processed with 5980
collisions."target:hemlock/hemlock-library.x86f" out of date.
*** Sigsegv in page not marked as write protected
*** Sigsegv in page not marked as write protected
*** Sigsegv in page not marked as write protected
*** Sigsegv in page not marked as write protected
*** Sigsegv in page not marked as write protected
*** Sigsegv in page not marked as write protected
...

so something's not right.
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2006-09-03 02:39:55 UTC

*** This bug has been marked as a duplicate of 140100 ***