NetBSD Problem Report #44159
From bch@methodlogic.net Sat Nov 27 03:04:31 2010
Return-Path: <bch@methodlogic.net>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
by www.NetBSD.org (Postfix) with ESMTP id 390ED63B95F
for <gnats-bugs@gnats.NetBSD.org>; Sat, 27 Nov 2010 03:04:31 +0000 (UTC)
Message-Id: <20101127021939.GA6740@methodlogic.net>
Date: Sat, 27 Nov 2010 02:19:39 +0000
From: bch@methodlogic.net
Reply-To:
To: gnats-bugs@gnats.NetBSD.org
Subject: startx fails w/ recent xsrc changes in -current
X-Send-Pr-Version: 3.95
>Number: 44159
>Category: toolchain
>Synopsis: startx (xinit) fails - gcc and/or crt problems
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: toolchain-manager
>State: closed
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat Nov 27 03:05:00 +0000 2010
>Closed-Date: Thu Sep 20 07:24:45 +0000 2012
>Last-Modified: Thu Sep 20 07:24:45 +0000 2012
>Originator: bch@methodlogic.net
>Release: NetBSD 5.99.40
>Organization:
Method Logic Digital (http://methodlogic.net/)
>Environment:
System: NetBSD kamloops 5.99.40 NetBSD 5.99.40 (kamloops) #88: Fri Nov 26 10:52:22 PST 2010 root@kamloops:/usr/obj/sys/arch/amd64/compile/kamloops amd64
Architecture: x86_64
Machine: amd64
>Description:
startx fails to start X. eg:
xauth: file /home/bch/.serverauth.389 does not exist
[long pause]
xinit: giving up
xinit: unable to connect to X server: Connection refused
xinit: server error
>How-To-Repeat:
startx (though *may* work on subsequent attempts)
>Fix:
retry and cross your fingers?
>Release-Note:
>Audit-Trail:
From: matthew green <mrg@eterna.com.au>
To: gnats-bugs@NetBSD.org
Cc: xsrc-manager@netbsd.org, gnats-admin@netbsd.org,
netbsd-bugs@netbsd.org
Subject: re: xsrc/44159: startx fails w/ recent xsrc changes in -current
Date: Sat, 27 Nov 2010 21:31:15 +1100
this one is likely a problem with the csu _init() calls in to libpixman
leaving the $rsp unaligned for amd64. the patch i have based on an idea
from joerg is below. you'll need to rebuild and install lib/csu and
then rebuild and install libpixman itself to fix this problem.
.mrg.
Index: arch/x86_64/crtbegin.S
===================================================================
RCS file: /cvsroot/src/lib/csu/arch/x86_64/crtbegin.S,v
retrieving revision 1.1
diff -p -r1.1 crtbegin.S
*** arch/x86_64/crtbegin.S 7 Aug 2010 18:01:34 -0000 1.1
--- arch/x86_64/crtbegin.S 27 Nov 2010 10:27:08 -0000
*************** __do_global_dtors_aux:
*** 94,99 ****
--- 94,100 ----
#endif
pushq %rbx
+ pushq %rbx
leaq 8+__DTOR_LIST__(%rip), %rbx
3:
movq (%rbx), %rax
*************** __do_global_dtors_aux:
*** 104,109 ****
--- 105,111 ----
jmp 3b
4:
popq %rbx
+ popq %rbx
cmpq $0, __deregister_frame_info@GOTPCREL(%rip)
je 5f
*************** __do_global_ctors_aux:
*** 137,142 ****
--- 139,145 ----
3:
pushq %rbx
+ pushq %rbx
leaq -8+__CTOR_LIST_END__(%rip), %rbx
4:
movq (%rbx), %rax
*************** __do_global_ctors_aux:
*** 148,153 ****
--- 151,157 ----
5:
popq %rbx
+ popq %rbx
ret
From: bch@methodlogic.net
To: gnats-bugs@NetBSD.org
Cc: xsrc-manager@netbsd.org, gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Subject: Re: xsrc/44159: startx fails w/ recent xsrc changes in -current
Date: Wed, 1 Dec 2010 04:39:29 +0000
On Sat, Nov 27, 2010 at 10:35:01AM +0000, matthew green wrote:
> The following reply was made to PR xsrc/44159; it has been noted by GNATS.
>
> From: matthew green <mrg@eterna.com.au>
> To: gnats-bugs@NetBSD.org
> Cc: xsrc-manager@netbsd.org, gnats-admin@netbsd.org,
> netbsd-bugs@netbsd.org
> Subject: re: xsrc/44159: startx fails w/ recent xsrc changes in -current
> Date: Sat, 27 Nov 2010 21:31:15 +1100
>
> this one is likely a problem with the csu _init() calls in to libpixman
> leaving the $rsp unaligned for amd64. the patch i have based on an idea
> from joerg is below. you'll need to rebuild and install lib/csu and
> then rebuild and install libpixman itself to fix this problem.
The file below was updated to r1.2 with latest cvs update, but that
only re-introduced the problem it was supposed to fix (or at least
conincidentally, the problem is back).
> .mrg.
>
>
> Index: arch/x86_64/crtbegin.S
> ===================================================================
> RCS file: /cvsroot/src/lib/csu/arch/x86_64/crtbegin.S,v
> retrieving revision 1.1
> diff -p -r1.1 crtbegin.S
> *** arch/x86_64/crtbegin.S 7 Aug 2010 18:01:34 -0000 1.1
> --- arch/x86_64/crtbegin.S 27 Nov 2010 10:27:08 -0000
> *************** __do_global_dtors_aux:
> *** 94,99 ****
> --- 94,100 ----
> #endif
>
> pushq %rbx
> + pushq %rbx
> leaq 8+__DTOR_LIST__(%rip), %rbx
> 3:
> movq (%rbx), %rax
> *************** __do_global_dtors_aux:
> *** 104,109 ****
> --- 105,111 ----
> jmp 3b
> 4:
> popq %rbx
> + popq %rbx
>
> cmpq $0, __deregister_frame_info@GOTPCREL(%rip)
> je 5f
> *************** __do_global_ctors_aux:
> *** 137,142 ****
> --- 139,145 ----
> 3:
>
> pushq %rbx
> + pushq %rbx
> leaq -8+__CTOR_LIST_END__(%rip), %rbx
> 4:
> movq (%rbx), %rax
> *************** __do_global_ctors_aux:
> *** 148,153 ****
> --- 151,157 ----
>
> 5:
> popq %rbx
> + popq %rbx
>
> ret
>
>
--
Brad Harder
Method Logic Digital Consulting
http://methodlogic.net
http://twitter.com/bcharder
From: matthew green <mrg@eterna.com.au>
To: bch@methodlogic.net
Cc: xsrc-manager@netbsd.org, gnats-admin@netbsd.org,
netbsd-bugs@netbsd.org, gnats-bugs@NetBSD.org
Subject: re: xsrc/44159: startx fails w/ recent xsrc changes in -current
Date: Wed, 01 Dec 2010 19:51:40 +1100
this seems to be a GCC codegen problem.
the function _pixman_implementation_create_sse2() generates code
that, given a correctly aligned stack upon entry, will call SSE2
insns expecting 16 byte alignment, with an 8 byte aligned value
in %rbp.
i think the right solution for now is to simply disable the SSE2
support on amd64 until we have a fixed compiler.
.mrg.
From: matthew green <mrg@eterna.com.au>
To: bch@methodlogic.net
Cc: xsrc-manager@netbsd.org, gnats-admin@netbsd.org,
netbsd-bugs@netbsd.org, gnats-bugs@NetBSD.org
Subject: re: xsrc/44159: startx fails w/ recent xsrc changes in -current
Date: Wed, 01 Dec 2010 20:09:08 +1100
FWIW, when using a newer GCC (gcc version 4.6.0 20101010 (experimental))
the code appears to be properly generated.
i have disabled SSE2 support for amd64 for now.
.mrg.
From: bch@methodlogic.net
To: gnats-bugs@NetBSD.org
Cc: xsrc-manager@netbsd.org, gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Subject: Re: xsrc/44159: startx fails w/ recent xsrc changes in -current
Date: Wed, 1 Dec 2010 16:17:24 +0000
On Wed, Dec 01, 2010 at 09:10:07AM +0000, matthew green wrote:
> The following reply was made to PR xsrc/44159; it has been noted by GNATS.
>
> From: matthew green <mrg@eterna.com.au>
> To: bch@methodlogic.net
> Cc: xsrc-manager@netbsd.org, gnats-admin@netbsd.org,
> netbsd-bugs@netbsd.org, gnats-bugs@NetBSD.org
> Subject: re: xsrc/44159: startx fails w/ recent xsrc changes in -current
> Date: Wed, 01 Dec 2010 20:09:08 +1100
Much better. X starts, and Firefox doesn't segfault immediately.
Thanks Matthew!
-bch
> FWIW, when using a newer GCC (gcc version 4.6.0 20101010 (experimental))
> the code appears to be properly generated.
>
> i have disabled SSE2 support for amd64 for now.
>
>
> .mrg.
>
--
Brad Harder
Method Logic Digital Consulting
http://methodlogic.net
http://twitter.com/bcharder
Responsible-Changed-From-To: xsrc-manager->toolchain-manager
Responsible-Changed-By: wiz@NetBSD.org
Responsible-Changed-When: Thu, 02 Dec 2010 08:48:49 +0000
Responsible-Changed-Why:
Since this is a toolchain problem with the pixman source, move
to toolchain category.
State-Changed-From-To: open->analyzed
State-Changed-By: wiz@NetBSD.org
State-Changed-When: Thu, 02 Dec 2010 08:48:49 +0000
State-Changed-Why:
Problem is understood, now we need a fix.
From: Paul Goyette <paul@whooppee.com>
To: gnats-bugs@netbsd.org
Cc: mrg@whooppee.com
Subject: re: xsrc/44159: startx fails w/ recent xsrc changes in -current
Date: Fri, 10 Dec 2010 06:10:56 -0800 (PST)
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
--0-1660703165-1291990256=:21757
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
The changes to disable sse2 on port-amd64 now prevent the amd64 port
from completing a 'build.sh release'. Building Xnest gets
/build/netbsd-local/dest/amd64/usr/X11R7/lib/libpixman-1.so: undefined reference to `_pixman_implementation_create_sse2'
Please see attachment for the complete link command.
-------------------------------------------------------------------------
| Paul Goyette | PGP Key fingerprint: | E-mail addresses: |
| Customer Service | FA29 0E3B 35AF E8AE 6651 | paul at whooppee.com |
| Network Engineer | 0786 F758 55DE 53BA 7731 | pgoyette at juniper.net |
| Kernel Developer | | pgoyette at netbsd.org |
-------------------------------------------------------------------------
--0-1660703165-1291990256=:21757
Content-Type: APPLICATION/octet-stream; name=release.amd64.log
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.NEB.4.64.1012100610560.21757@quicky.whooppee.com>
Content-Description:
Content-Disposition: attachment; filename=release.amd64.log
IyAgICAgIGxpbmsgIHhuZXN0L1huZXN0Ci9idWlsZC9uZXRic2QtbG9jYWwv
dG9vbHMveDg2XzY0L2FtZDY0L2Jpbi94ODZfNjQtLW5ldGJzZC1nY2MgIC1C
L2J1aWxkL25ldGJzZC1sb2NhbC9kZXN0L2FtZDY0L3Vzci9saWIvIC1CL2J1
aWxkL25ldGJzZC1sb2NhbC9kZXN0L2FtZDY0L3Vzci9saWIvICAtV2wsLW5v
c3RkbGliICAgLVdsLC0tZXhwb3J0LWR5bmFtaWMgLVdsLC1ycGF0aC1saW5r
LC9idWlsZC9uZXRic2QtbG9jYWwvZGVzdC9hbWQ2NC91c3IvWDExUjcvbGli
ICAtV2wsLXJwYXRoLC91c3IvWDExUjcvbGliICAtTC9idWlsZC9uZXRic2Qt
bG9jYWwvZGVzdC9hbWQ2NC91c3IvWDExUjcvbGliICAgICAtbyBYbmVzdCAg
QXJncy5vIENvbG9yLm8gQ3Vyc29yLm8gRGlzcGxheS5vIEV2ZW50cy5vIEZv
bnQubyBHQy5vIEdDT3BzLm8gSGFuZGxlcnMubyBJbml0Lm8gS2V5Ym9hcmQu
byBQaXhtYXAubyBQb2ludGVyLm8gU2NyZWVuLm8gVmlzdWFsLm8gV2luZG93
Lm8gZHBtc3N0dWJzLm8gc3R1YnMubyBtaWluaXRleHQubyBmYmNtYXBfbWku
byAtbG0gL2J1aWxkL25ldGJzZC1sb2NhbC9vYmovYW1kNjQvZXh0ZXJuYWwv
bWl0L3hvcmcvc2VydmVyL3hvcmctc2VydmVyL2RpeC9saWJkaXguYSAgL2J1
aWxkL25ldGJzZC1sb2NhbC9vYmovYW1kNjQvZXh0ZXJuYWwvbWl0L3hvcmcv
c2VydmVyL3hvcmctc2VydmVyL2ZiL2xpYmZiLmEgIC9idWlsZC9uZXRic2Qt
bG9jYWwvb2JqL2FtZDY0L2V4dGVybmFsL21pdC94b3JnL3NlcnZlci94b3Jn
LXNlcnZlci9taS9saWJtaS5hICAvYnVpbGQvbmV0YnNkLWxvY2FsL29iai9h
bWQ2NC9leHRlcm5hbC9taXQveG9yZy9zZXJ2ZXIveG9yZy1zZXJ2ZXIvY29u
ZmlnL2xpYmNvbmZpZy5hICAvYnVpbGQvbmV0YnNkLWxvY2FsL29iai9hbWQ2
NC9leHRlcm5hbC9taXQveG9yZy9zZXJ2ZXIveG9yZy1zZXJ2ZXIveGZpeGVz
L2xpYnhmaXhlcy5hICAvYnVpbGQvbmV0YnNkLWxvY2FsL29iai9hbWQ2NC9l
eHRlcm5hbC9taXQveG9yZy9zZXJ2ZXIveG9yZy1zZXJ2ZXIvWGV4dC9saWJY
ZXh0LmEgIC9idWlsZC9uZXRic2QtbG9jYWwvb2JqL2FtZDY0L2V4dGVybmFs
L21pdC94b3JnL3NlcnZlci94b3JnLXNlcnZlci9kYmUvbGliZGJlLmEgIC9i
dWlsZC9uZXRic2QtbG9jYWwvb2JqL2FtZDY0L2V4dGVybmFsL21pdC94b3Jn
L3NlcnZlci94b3JnLXNlcnZlci9yZWNvcmQvbGlicmVjb3JkLmEgIC9idWls
ZC9uZXRic2QtbG9jYWwvb2JqL2FtZDY0L2V4dGVybmFsL21pdC94b3JnL3Nl
cnZlci94b3JnLXNlcnZlci9yYW5kci9saWJyYW5kci5hICAvYnVpbGQvbmV0
YnNkLWxvY2FsL29iai9hbWQ2NC9leHRlcm5hbC9taXQveG9yZy9zZXJ2ZXIv
eG9yZy1zZXJ2ZXIvcmVuZGVyL2xpYnJlbmRlci5hICAvYnVpbGQvbmV0YnNk
LWxvY2FsL29iai9hbWQ2NC9leHRlcm5hbC9taXQveG9yZy9zZXJ2ZXIveG9y
Zy1zZXJ2ZXIvZGFtYWdlZXh0L2xpYmRhbWFnZWV4dC5hICAvYnVpbGQvbmV0
YnNkLWxvY2FsL29iai9hbWQ2NC9leHRlcm5hbC9taXQveG9yZy9zZXJ2ZXIv
eG9yZy1zZXJ2ZXIvbWlleHQvZGFtYWdlL2xpYmRhbWFnZS5hICAgIC9idWls
ZC9uZXRic2QtbG9jYWwvb2JqL2FtZDY0L2V4dGVybmFsL21pdC94b3JnL3Nl
cnZlci94b3JnLXNlcnZlci9taWV4dC9zaGFkb3cvbGlic2hhZG93LmEgIC9i
dWlsZC9uZXRic2QtbG9jYWwvb2JqL2FtZDY0L2V4dGVybmFsL21pdC94b3Jn
L3NlcnZlci94b3JnLXNlcnZlci9YaS9saWJYaS5hICAvYnVpbGQvbmV0YnNk
LWxvY2FsL29iai9hbWQ2NC9leHRlcm5hbC9taXQveG9yZy9zZXJ2ZXIveG9y
Zy1zZXJ2ZXIveGtiL2xpYnhrYi5hICAvYnVpbGQvbmV0YnNkLWxvY2FsL29i
ai9hbWQ2NC9leHRlcm5hbC9taXQveG9yZy9zZXJ2ZXIveG9yZy1zZXJ2ZXIv
eGtic3R1YnMvbGlieGtic3R1YnMuYSAgL2J1aWxkL25ldGJzZC1sb2NhbC9v
YmovYW1kNjQvZXh0ZXJuYWwvbWl0L3hvcmcvc2VydmVyL3hvcmctc2VydmVy
L2NvbXBvc2l0ZS9saWJjb21wb3NpdGUuYSAgL2J1aWxkL25ldGJzZC1sb2Nh
bC9vYmovYW1kNjQvZXh0ZXJuYWwvbWl0L3hvcmcvc2VydmVyL3hvcmctc2Vy
dmVyL29zL2xpYm9zLmEgIC9idWlsZC9uZXRic2QtbG9jYWwvb2JqL2FtZDY0
L2V4dGVybmFsL21pdC94b3JnL3NlcnZlci94b3JnLXNlcnZlci9nbHgvbGli
Z2x4LmEgIC1sWGZvbnQgLWxYZXh0IC1sZm9udGVuYyAgLWxwaXhtYW4tMSAt
bFgxMSAtbFhhdSAgLWxYZG1jcCAtbGZyZWV0eXBlIC1sbSAtbGNyeXB0byAt
bHg4Nl82NCAgICAgIC1ML2J1aWxkL25ldGJzZC1sb2NhbC9kZXN0L2FtZDY0
L3Vzci9saWIgICAtV2wsLXJwYXRoLWxpbmssL2J1aWxkL25ldGJzZC1sb2Nh
bC9kZXN0L2FtZDY0L2xpYiAgLUwvYnVpbGQvbmV0YnNkLWxvY2FsL2Rlc3Qv
YW1kNjQvbGliIC1XbCwtcnBhdGgtbGluaywvYnVpbGQvbmV0YnNkLWxvY2Fs
L2Rlc3QvYW1kNjQvdXNyL2xpYiAgLUwvYnVpbGQvbmV0YnNkLWxvY2FsL2Rl
c3QvYW1kNjQvdXNyL2xpYgovYnVpbGQvbmV0YnNkLWxvY2FsL2Rlc3QvYW1k
NjQvdXNyL1gxMVI3L2xpYi9saWJwaXhtYW4tMS5zbzogdW5kZWZpbmVkIHJl
ZmVyZW5jZSB0byBgX3BpeG1hbl9pbXBsZW1lbnRhdGlvbl9jcmVhdGVfc3Nl
MicKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKKioqIFtY
bmVzdF0gRXJyb3IgY29kZSAxCm5ibWFrZTogc3RvcHBlZCBpbiAvYnVpbGQv
bmV0YnNkLWxvY2FsL3NyYy9leHRlcm5hbC9taXQveG9yZy9zZXJ2ZXIveG9y
Zy1zZXJ2ZXIvaHcveG5lc3QKMSBlcnJvcgpuYm1ha2U6IHN0b3BwZWQgaW4g
L2J1aWxkL25ldGJzZC1sb2NhbC9zcmMvZXh0ZXJuYWwvbWl0L3hvcmcvc2Vy
dmVyL3hvcmctc2VydmVyL2h3L3huZXN0Cg==
--0-1660703165-1291990256=:21757--
From: Paul Goyette <paul@whooppee.com>
To: gnats-bugs@netbsd.org
Cc:
Subject: re: xsrc/44159: startx fails w/ recent xsrc changes in -current
Date: Fri, 10 Dec 2010 06:12:26 -0800 (PST)
On Fri, 10 Dec 2010, Paul Goyette wrote:
> The changes to disable sse2 on port-amd64 now prevent the amd64 port from
> completing a 'build.sh release'. Building Xnest gets
>
> /build/netbsd-local/dest/amd64/usr/X11R7/lib/libpixman-1.so: undefined
> reference to `_pixman_implementation_create_sse2'
>
> Please see attachment for the complete link command.
I may have spoken too soon - it is possible that my xsrc tree is not
current.
-------------------------------------------------------------------------
| Paul Goyette | PGP Key fingerprint: | E-mail addresses: |
| Customer Service | FA29 0E3B 35AF E8AE 6651 | paul at whooppee.com |
| Network Engineer | 0786 F758 55DE 53BA 7731 | pgoyette at juniper.net |
| Kernel Developer | | pgoyette at netbsd.org |
-------------------------------------------------------------------------
State-Changed-From-To: analyzed->feedback
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Sat, 31 Dec 2011 20:51:14 +0000
State-Changed-Why:
We have a new compiler now. Is this problem fixed? There have been reports
that it is not.
State-Changed-From-To: feedback->closed
State-Changed-By: mrg@NetBSD.org
State-Changed-When: Thu, 20 Sep 2012 07:24:45 +0000
State-Changed-Why:
pretty sure this is now fixed.
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.