First Last Prev Next    No search results available      Search page      Enter new bug
Bug#: 138468
Alias:
Product:
Component:
Status: RESOLVED
Resolution: FIXED
Assigned To: Gentoo VPS Team <vserver-devs@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Jimmy.Jazz@gmx.net
Add CC:
CC:
URL:
Summary:
Status Whiteboard:
Keywords:

Filename Description Type Creator Created Size Actions
gcc346-gdb.txt gcc 3.4.6 gdb text/plain Benedikt Böhm 2006-08-12 00:48 0000 2.40 KB Details
gcc411-gdb.txt gcc 4.1.1 gdb text/plain Benedikt Böhm 2006-08-12 00:49 0000 2.42 KB Details
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 138468 depends on: Show dependency tree
Bug 138468 blocks:
Votes: 0    Show votes for this bug    Vote for this bug

Additional Comments: (this is where you put emerge --info)


Not eligible to see or edit group visibility for this bug.






View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2006-06-29 05:47 0000
Hello,

the sys-kernel/vserver-sources-2.1.1_rc21-r3 package is no more in the portage
tree. In fact, i'm not sure if i'm at the right place for asking help.

Anyway, here is my problem ;)

First, vserver was working well on my computer until i decided to change for
gcc 4.1.1 in place of gcc 4.2 ... and remerge the whole world again.

I tried different vserver and kernel versions, i generated new vserver client
in case there was some incompatibilites between versions, but i get always the
same exec-ulimit error complaining about a bad address

exec-ulimit: execv(): Bad address

The last version of the kernel that has worked perfectly was
linux-2.6.16-vserver-2.1.1-rc21-r3. 

Currently, i'm using kernel 2.6.17.1 vanilla + patch-2.6.17-vs2.1.1-rc24.diff
but without much success. Of course i tried gentoo 2.7.17 kernel version +
vserver patch as well !

Here is my configuration:

Portage 2.1.1_pre1-r5 (default-linux/amd64/2006.0, gcc-4.1.1, glibc-2.4-r3,
2.6.17.1-vs2.1.1-rc24
x86_64)=================================================================
System uname: 2.6.17.1-vs2.1.1-rc24 x86_64 AMD Athlon(tm) 64 Processor 3200+
Gentoo Base System version 1.12.1
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632)
[disabled]
ccache version 2.3 [enabled]
dev-lang/python:     2.4.2
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.17.50.0.2
sys-devel/gcc-config: 1.3.13-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.16
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O3 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib/mozilla-thunderbird/components/myspell
/usr/share/X11/xkb /var/qmail/alias /var/qmail/control /var/vpopmail/domains
/var/vpopmail/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/splash
/etc/terminfo"
CXXFLAGS="-march=k8 -O3 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks metadata-transfer sandbox sfperms strict
userpriv"
GENTOO_MIRRORS="http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ ..."
LANG="fr_FR.utf-8"
LC_ALL="fr_FR.utf-8"
LDFLAGS="-Wl,-O1"
LINGUAS="fr"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/overlay"
SYNC="rsync://snowman.cryosphere.shacknet.nu/gentoo-portage"
USE="a52 aac acl alsa amd64 avi bash-completion berkdb bitmap-fonts bzip2 cairo
cli crypt cups curl dbus dga dlloader dri dts dvdr eds emboss encode esd exif
fam firefox flac foomaticdb gdbm gif gmp gnome gnutls gphoto2 gpm gstreamer
gtk2 hal howl ieee1394 imlib isdnlog java jpeg lcms lzw lzw-tiff mad maildir
mmap mng mp3 mpeg ncurses nls nptl nptlonly ogg opengl pam pcre pdflib perl png
posix pppd python qt3 qt4 readline reflection sdl session speex spell spl ssl
sysvipc tcpd theora threads tiff truetype truetype-fonts type1-fonts udev
unicode usb userlocales v4l v4l2 vorbis xml xorg xpm xv zlib elibc_glibc
input_devices_keyboard input_devices_mouse input_devices_joystick
input_devices_evdev kernel_linux linguas_fr userland_GNU video_cards_radeon
video_cards_fglrx video_cards_vesa video_cards_v4l"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_RSYNC_EXTRA_OPTS

and the vserver sys-cluster/util-vserver-0.30.210-r14 package.

Currently, i'm testing the last cvs version (i desinstalled util-vserver),
sys-cluster/vserver-utils-1.0.4_pre
sys-libs/libvserver-2.0_pre
dev-libs/dietlibc-0.30
dev-libs/libowfat-0.24

As i can tell, the vserver documentation is not really explicit ;)
For the moment, it is not a success story either and i continue to get an
error. Not the same but always about bad address ;)

vserver start gentoo-template returns,

Failed to create new namespace: Bad address
An error occured while trying to setup the context for 'gentoo-template'

------- Comment #1 From Jimmy.Jazz@gmx.net 2006-06-29 07:43:28 0000 -------
Here are the settings,
#
# Linux VServer
#
# CONFIG_VSERVER_LEGACY is not set
# CONFIG_VSERVER_NGNET is not set
CONFIG_VSERVER_REMAP_SADDR=y
CONFIG_VSERVER_COWBL=y
# CONFIG_VSERVER_VTIME is not set
CONFIG_VSERVER_PROC_SECURE=y
CONFIG_VSERVER_HARDCPU=y
CONFIG_VSERVER_IDLETIME=y
CONFIG_VSERVER_IDLELIMIT=y
# CONFIG_TAGGING_NONE is not set
# CONFIG_TAGGING_UID16 is not set
# CONFIG_TAGGING_GID16 is not set
CONFIG_TAGGING_ID24=y
# CONFIG_TAGGING_INTERN is not set
# CONFIG_TAGGING_RUNTIME is not set
# CONFIG_TAG_NFSD is not set
# CONFIG_PROPAGATE is not set
CONFIG_VSERVER_DEBUG=y
CONFIG_VSERVER_HISTORY=y
CONFIG_VSERVER_HISTORY_SIZE=64
CONFIG_VSERVER_MONITOR=y
CONFIG_VSERVER_MONITOR_SIZE=1024
CONFIG_VSERVER_MONITOR_SYNC=256
CONFIG_VSERVER=y
CONFIG_VSERVER_SECURITY=y
CONFIG_VSERVER_LEGACYNET=y

------- Comment #2 From Jimmy.Jazz@gmx.net 2006-06-29 08:11:04 0000 -------
really i don't understand what append. I was using testme.sh from
http://vserver.13thfloor.at/Stuff/SCRIPT/testme.sh with the
sys-cluster/util-vserver-0.30.210-r14 package and it has passed all the tests !

output:

# ./testme.sh
Linux-VServer Test [V0.15] Copyright (C) 2003-2006 H.Poetzl
chcontext is working.
chbind is working.
Linux 2.6.17.1-vs2.1.1-rc24 #3 PREEMPT Wed Jun 28 19:04:34 MEST 2006 x86_64
Ea 0.30.210 236/glibc (DSa) <v13,net>
VCI: 0002:0101 236 031101f4 (KtTbnPD)
---
[000]# succeeded.
[001]# succeeded.
[011]# succeeded.
[031]# succeeded.
[101]# succeeded.
[102]# succeeded.
[201]# succeeded.
[202]# succeeded.

But the problem stays the same

------- Comment #3 From Jimmy.Jazz@gmx.net 2006-06-29 08:47:56 0000 -------
okay!!!! i have found the culprit lol dev-libs/dietlibc

it works great with 0.28 release...

Flags i changed, 

CFLAGS="`echo $CFLAGS | /usr/bin/sed -e s/-O3/-O2/`"
CFLAGS="`echo $CFLAGS | /usr/bin/sed -e s/-fno-stack-protector-all//`"
without the above one it doesn't compile
and
CXXFLAGS="`echo $CXXFLAGS | /usr/bin/sed -e s/-O3/-O2/`"

for sys-cluster/util-vserver, i changed
CFLAGS="`echo ${CFLAGS} | /usr/bin/sed -e s/-O3/-O2/`"
CXXFLAGS="`echo $CXXFLAGS | /usr/bin/sed -e s/-O3/-O2/`"

i don't think all the modified flags are necessary

I will investigate further and let you know :)

------- Comment #4 From Jimmy.Jazz@gmx.net 2006-06-29 09:12:11 0000 -------
summery
-------

Sure, i never compiled dietlibc 0.28 with gcc 4.1.1 and above before. Certainly
because it didn't compile at all. Certainly i had upgraded dietlibc with the
0.30 version which doesn't work correctly with the util-vserver package. Here
begins all my vserver issues.

What i have found,
it is not necessary to lower CFLAGS optimization flag, sys-cluster/util-vserver
works well with -O3

same for dev-libs/dietlibc but -fno-stack-protector-all needs to be
discarded.That flag is uncompatible with gcc 4.1.1 release

And definitely don't use the last dev-libs/dietlibc-0.30

Hope that helps someone.

------- Comment #5 From Jakub Moc (RETIRED) 2006-06-29 10:11:37 0000 -------
*** Bug 138497 has been marked as a duplicate of this bug. ***

------- Comment #6 From Jakub Moc (RETIRED) 2006-06-29 10:13:19 0000 -------
Reopen. Don't close bugs that are not fixed in portage, please.

------- Comment #7 From Jimmy.Jazz@gmx.net 2006-06-29 11:33:14 0000 -------
(In reply to comment #6)
> Reopen. Don't close bugs that are not fixed in portage, please.
> 

Sorry, i thought the issue was more dietlibc relevant than util-vserver. That's
why i closed this one and opened Bug 138497 

Jj

------- Comment #8 From Benedikt Böhm 2006-07-01 02:45:15 0000 -------
(In reply to comment #0)
> Hello,
> 
> the sys-kernel/vserver-sources-2.1.1_rc21-r3 package is no more in the portage
> tree. In fact, i'm not sure if i'm at the right place for asking help.
> 

the experimental kernels have moved to http://overlays.gentoo.org/proj/vps


(In reply to comment #4)
> -fno-stack-protector-all needs to be
> discarded.That flag is uncompatible with gcc 4.1.1 release
> 

there is no -fno-stack-protector-all in the ebuilds, dietlibc or
util-vserver...

------- Comment #9 From Jimmy.Jazz@gmx.net 2006-07-01 07:43:30 0000 -------
> 
> there is no -fno-stack-protector-all in the ebuilds, dietlibc or
> util-vserver...
> 

Hello,

you over see it, please read again or run a "grep no-stack-protector-all 
/var/log/ebuild/dev-libs:dietlibc-0.28*" :)

As i said above dietlibc 0.30 doesn't work with vserver-utils or util-vserver
(i didn't test 0.29 !).

To compile dietlibc-0.28 with gcc 4.1.1 you need to take
"no-stack-protector-all" off from the package. Otherwise it doesn't compile as
you can see below:

>>> Compiling source in /var/tmp/portage/dietlibc-0.28/work/dietlibc-0.28 ...
mkdir bin-x86_64
gcc -I. -isystem include -march=k8 -O2 -pipe -D__dietlibc__
-fno-stack-protector-all -fno-stack-protector -c x86_64/start.S -o
bin-x86_64/start.o
gcc -I. -isystem include -march=k8 -O2 -pipe -D__dietlibc__
-fno-stack-protector-all -fno-stack-protector -c dyn_start.c -o
bin-x86_64/dyn_start.o
cc1: erreur: option "-fno-stack-protector-all" de la ligne de commande non
reconnue
gcc -I. -isystem include -march=k8 -O2 -pipe -D__dietlibc__
-fno-stack-protector-all -fno-stack-protector -c dyn_stop.c -o
bin-x86_64/dyn_stop.o
gcc -I. -isystem include -march=k8 -O2 -pipe -D__dietlibc__
-fno-stack-protector-all -fno-stack-protector -c x86_64/unified.S -o
bin-x86_64/unified.o
make: *** [bin-x86_64/start.o] Erreur 1
make: *** Attente des t

------- Comment #10 From Jimmy.Jazz@gmx.net 2006-07-01 07:43:30 0000 -------
> 
> there is no -fno-stack-protector-all in the ebuilds, dietlibc or
> util-vserver...
> 

Hello,

you over see it, please read again or run a "grep no-stack-protector-all 
/var/log/ebuild/dev-libs:dietlibc-0.28*" :)

As i said above dietlibc 0.30 doesn't work with vserver-utils or util-vserver
(i didn't test 0.29 !).

To compile dietlibc-0.28 with gcc 4.1.1 you need to take
"no-stack-protector-all" off from the package. Otherwise it doesn't compile as
you can see below:

>>> Compiling source in /var/tmp/portage/dietlibc-0.28/work/dietlibc-0.28 ...
mkdir bin-x86_64
gcc -I. -isystem include -march=k8 -O2 -pipe -D__dietlibc__
-fno-stack-protector-all -fno-stack-protector -c x86_64/start.S -o
bin-x86_64/start.o
gcc -I. -isystem include -march=k8 -O2 -pipe -D__dietlibc__
-fno-stack-protector-all -fno-stack-protector -c dyn_start.c -o
bin-x86_64/dyn_start.o
cc1: erreur: option "-fno-stack-protector-all" de la ligne de commande non
reconnue
gcc -I. -isystem include -march=k8 -O2 -pipe -D__dietlibc__
-fno-stack-protector-all -fno-stack-protector -c dyn_stop.c -o
bin-x86_64/dyn_stop.o
gcc -I. -isystem include -march=k8 -O2 -pipe -D__dietlibc__
-fno-stack-protector-all -fno-stack-protector -c x86_64/unified.S -o
bin-x86_64/unified.o
make: *** [bin-x86_64/start.o] Erreur 1
make: *** Attente des tâches non terminées....
cc1: erreur: option "-fno-stack-protector-all" de la ligne de commande non
reconnue
make: *** [bin-x86_64/dyn_stop.o] Erreur 1
cc1: erreur: option "-fno-stack-protector-all" de la ligne de commande non
reconnue
make: *** [bin-x86_64/dyn_start.o] Erreur 1
make: *** wait: Aucun processus enfant. Arrêt.

!!! ERROR: dev-libs/dietlibc-0.28 failed.
Call stack:
  ebuild.sh, line 1545:   Called dyn_compile
  ebuild.sh, line 940:   Called src_compile
  dietlibc-0.28.ebuild, line 42:   Called die

!!! emake failed

------- Comment #11 From Benedikt Böhm 2006-08-12 00:46:12 0000 -------
after having investigated this a bit more, we have found out that the environ
pointer to execve gets corrupted with gcc 4.1.1 but not with gcc 3.4.6 (no
other versions tested)

see the attached gdb outputs, you will notice that %rdx is corrupted in the
gcc411 register dump...

unfortunately we haven't found a fix yet, since all other execve (in
util-vserver) work great..

------- Comment #12 From Benedikt Böhm 2006-08-12 00:48:55 0000 -------
Created an attachment (id=94035) [edit]
gcc 3.4.6 gdb

------- Comment #13 From Benedikt Böhm 2006-08-12 00:49:07 0000 -------
Created an attachment (id=94036) [edit]
gcc 4.1.1 gdb

------- Comment #14 From Benedikt Böhm 2006-09-07 04:22:33 0000 -------
this should be fixed in 0.30-r1, please test

------- Comment #15 From Jimmy.Jazz@gmx.net 2006-09-07 09:06:22 0000 -------
(In reply to comment #13)
> this should be fixed in 0.30-r1, please test
> 
Thx,

dev-libs/dietlibc-0.30-r1 works great now with
sys-cluster/util-vserver-0.30.210-r18
and linux-2.6.17-gentoo-r7 + patch-2.6.17.11-vs2.1.1-rc31.diff

Jj

First Last Prev Next    No search results available      Search page      Enter new bug