Bug 193610 - www/chromium 37.0.2062.120_1 Bus error (core dumped)
Summary: www/chromium 37.0.2062.120_1 Bus error (core dumped)
Status: Closed Overcome By Events
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: freebsd-chromium (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-09-13 16:16 UTC by Rob Belics
Modified: 2015-11-08 15:50 UTC (History)
11 users (show)

See Also:


Attachments
Program terminated with signal SIGBUS, Bus error (9.70 KB, text/plain)
2014-09-20 23:36 UTC, Hasse
no flags Details
bt full (10.77 KB, text/plain)
2014-10-03 21:03 UTC, Lawrence Chen
no flags Details
bt full (44.29 KB, text/plain)
2014-11-05 14:35 UTC, Hasse
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Rob Belics 2014-09-13 16:16:28 UTC
Upgraded chromium from the last update and tried to start. Immediately got that error. 

FreeBSD  9.3-RELEASE FreeBSD 9.3-RELEASE #0 r268512: Thu Jul 10 23:44:39 UTC 2014     root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64
Comment 1 Carlos J Puga Medina 2014-09-13 20:46:13 UTC
What compiler did you use to build chromium? Also, it would be helpful if you can provide us a full backtrace from the core dump.
Comment 2 Rob Belics 2014-09-13 21:53:08 UTC
Sorry. Got called away.

This is from a build using GCC48 after I got the same error using a build with clang in the original ports. I'll get that to you in a bit.

(gdb) core chrome.core
Core was generated by `chrome'.
Program terminated with signal 10, Bus error.
#0  0x0000000805ecd012 in ?? ()
(gdb) bt
#0  0x0000000805ecd012 in ?? ()
#1  0x00007fffffffe4c0 in ?? ()
#2  0x0000000805ec6bce in ?? ()
#3  0x000000081876a190 in ?? ()
#4  0x000000080eac2ba0 in ?? ()
#5  0x0000000818788b00 in ?? ()
#6  0x000000081876a000 in ?? ()
#7  0x0000000818788ae0 in ?? ()
#8  0x0000000000b2a06e in ?? ()
#9  0x000000081876a000 in ?? ()
#10 0x0000000000930fde in ?? ()
#11 0x0000000000000000 in ?? ()
Comment 3 Carlos J Puga Medina 2014-09-13 22:07:04 UTC
These backtraces are rather useless without debug symbols. Please, try rebuilding Chromium with the DEBUG option enabled and show 'bt full' output which gives you local variables, function arguments, etc.
Comment 4 Rob Belics 2014-09-14 01:22:08 UTC
I set DEBUG in config but now I get "Exec format error" and no core dump. When I had recompiled Chrome after compiling using gcc48, I thought I saw it run with something like "not an executable file" but thought I was mis-reading it.

So I can't get it to do anything at all but I'll try compiling again without DEBUG to see if I can get it back to the original state.
Comment 5 Rob Belics 2014-09-14 01:50:48 UTC
In this thread, I seem to be going down the same path: http://lists.freebsd.org/pipermail/freebsd-questions/2014-May/258210.html
Comment 6 Jens Grassel 2014-09-14 08:17:34 UTC
Hi,

since the last chromium upgrade I have the same problem. On start chrome quits with "bus error". :-(
Comment 7 Rob Belics 2014-09-14 10:32:45 UTC
I recompiled using the original port, again, without DEBUG and I get a bus error. So I compile with debug and I get the 'exec format error'. So I'm stuck there.
Comment 8 Carlos J Puga Medina 2014-09-14 10:35:05 UTC
Try to build chromium port from this GH repository:

https://github.com/gliaskos/freebsd-chromium/tree/master/www/chromium

Or wait to be committed into the ports tree.
Comment 9 Rob Belics 2014-09-16 13:27:43 UTC
Installed the latest update in ports but still having the same issue.
Comment 10 Carlos J Puga Medina 2014-09-16 13:43:53 UTC
(In reply to Rob Belics from comment #9)
> Installed the latest update in ports but still having the same issue.

I'll take a look. Thanks for reporting.
Comment 11 CraigW 2014-09-18 00:31:29 UTC
I am adding a me too.  Same thing as Rob B.

I have built chromium in poudriere, and from /usr/ports on the host.
gcc4.8 and clang 3.4.1.


I also saw my DEBUG=on version would not run. comment #7.




> uname -a
FreeBSD desktop.home.org 9.3-STABLE FreeBSD 9.3-STABLE #0 r271674: Tue Sep 16 13:12:37 CDT 2014     root@desktop.home.org:/usr/obj/usr/src/sys/SANDYBRIDGE  amd64

> gcc48 -v
Using built-in specs.
COLLECT_GCC=gcc48
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc48/gcc/x86_64-portbld-freebsd9.3/4.8.3/lto-wrapper
Target: x86_64-portbld-freebsd9.3
...
Thread model: posix
gcc version 4.8.3 (FreeBSD Ports Collection) 

> clang -v
FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
Target: x86_64-unknown-freebsd9.3
Thread model: posix
Selected GCC installation: 


Poudriere version: 3.0.17
Host OSVERSION: 903503
Jail OSVERSION: 903502


===> The following configuration options are available for chromium-37.0.2062.120_2:
     CODECS=on: Compile and enable patented codecs like H.264
     DEBUG=off: Build with debugging support
     GCONF=on: GConf configuration backend support
     PULSEAUDIO=on: PulseAudio sound server support
     TEST=off: Build and/or run tests
Comment 12 Rob Belics 2014-09-20 00:09:55 UTC
Just updated to the latest port again: chromium-37.0.2062.120_3. Same bus error.
Comment 13 Hasse 2014-09-20 23:36:34 UTC
Created attachment 147517 [details]
Program terminated with signal SIGBUS, Bus error
Comment 14 Hasse 2014-09-20 23:39:19 UTC
Comment on attachment 147517 [details]
Program terminated with signal SIGBUS, Bus error

I miss chrome

FreeBSD 9.3-PRERELEASE FreeBSD 9.3-PRERELEASE #0 r268449: Wed Jul  9 11:34:16 CEST 2014 no:/usr/obj/usr/src/sys/ALFRID  amd64
Comment 15 CraigW 2014-09-21 08:58:37 UTC
I ended up reverting back to gcc 4.7 to compile chromium.
chromium at least now launches and runs, still core dumps on exit though.


I took a patch found in 
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=189444
to allow my /etc/make.conf with overrides to DEFAULT_VERSIONS to work correctly and not get bogus /usr/ports/lang/gcc (gcc48) depends pulled in.


--- /usr/ports/Mk/bsd.gcc.mk.orig	2014-09-20 22:19:32.980350051 -0500
+++ /usr/ports/Mk/bsd.gcc.mk	2014-09-20 17:02:51.695805244 -0500
@@ -148,7 +148,7 @@
 .  if ${OSVERSION} < ${_GCCVERSION_${v}_L} || ${OSVERSION} > ${_GCCVERSION_${v}_R} || !exists(/usr/bin/gcc)
 V:=			${_GCCVERSION_${v}_V:S/.//}
 _GCC_PORT_DEPENDS:=	gcc${V}
-.   if ${_USE_GCC} == ${GCC_DEFAULT}
+.   if ${_USE_GCC} == ${GCC_DEFAULT}  && empty(DEFAULT_VERSIONS:Mgcc=*)
 _GCC_PORT:=		gcc
 .   else
 _GCC_PORT:=		gcc${V}






/etc/make.conf (relevant parts only)

DEFAULT_VERSIONS= apache=2.4 gcc=4.9 mysql=5.6 perl5=5.18 php=5.5 ruby=2.0
BATCH=yes
MAKE_JOBS_UNSAFE=yes
# bus error, core dumps - trying 4.7
# also attempt to shut off stack protection
.if ${.CURDIR:M*/www/chromium*}
 USE_GCC=4.7
 CC=gcc47
 CXX=g++47
 CPP=cpp47
 WITH_SSP=no
 WITH_SSP_PORTS=no
.endif



I duuno if I'd call it fixed, but maybe others can at least get chromium running again.



(In reply to Craig Wiesen from comment #11)
> I am adding a me too.  Same thing as Rob B.
> 
> I have built chromium in poudriere, and from /usr/ports on the host.
> gcc4.8 and clang 3.4.1.
> 
> 
> I also saw my DEBUG=on version would not run. comment #7.
> 
> 
> 
> 
> > uname -a
> FreeBSD desktop.home.org 9.3-STABLE FreeBSD 9.3-STABLE #0 r271674: Tue Sep
> 16 13:12:37 CDT 2014    
> root@desktop.home.org:/usr/obj/usr/src/sys/SANDYBRIDGE  amd64
> 
> > gcc48 -v
> Using built-in specs.
> COLLECT_GCC=gcc48
> COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc48/gcc/x86_64-portbld-freebsd9.3/4.
> 8.3/lto-wrapper
> Target: x86_64-portbld-freebsd9.3
> ...
> Thread model: posix
> gcc version 4.8.3 (FreeBSD Ports Collection) 
> 
> > clang -v
> FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
> Target: x86_64-unknown-freebsd9.3
> Thread model: posix
> Selected GCC installation: 
> 
> 
> Poudriere version: 3.0.17
> Host OSVERSION: 903503
> Jail OSVERSION: 903502
> 
> 
> ===> The following configuration options are available for
> chromium-37.0.2062.120_2:
>      CODECS=on: Compile and enable patented codecs like H.264
>      DEBUG=off: Build with debugging support
>      GCONF=on: GConf configuration backend support
>      PULSEAUDIO=on: PulseAudio sound server support
>      TEST=off: Build and/or run tests
Comment 16 Adam McDougall 2014-09-22 00:43:42 UTC
The gcc47 workaround works for me on 9.3 (chromium starts), thanks!  It emits some gcc47 not found errors when poudriere runs so there is probably something not clean about it, but at least it can work on 9 now.
Comment 17 CraigW 2014-09-26 03:04:35 UTC
I have now also added this so /usr/ports/www/chromium/Makefile

It seems to help force chromium build in poudriere.

diff -u Makefile.orig  Makefile
--- Makefile.orig	2014-09-25 21:44:39.397280194 -0500
+++ Makefile	2014-09-25 19:59:45.731277514 -0500
@@ -16,6 +16,7 @@
 CFLAGS+=	-fno-stack-protector -isystem${LOCALBASE}/include
 
 BUILD_DEPENDS=	${LOCALBASE}/bin/gperf:${PORTSDIR}/devel/gperf \
+		gcc47:${PORTSDIR}/lang/gcc47 \
 		bash:${PORTSDIR}/shells/bash \
 		yasm:${PORTSDIR}/devel/yasm \
 		flock:${PORTSDIR}/sysutils/flock \


With that, I do not need the patch to /usr/ports/Mk/bsd.gcc

Poudriere still emits all those scary gcc47 exit status messages and chrome still core dumps upon exit.


I do not understand how poudriere can use non base gcc/clang versions ever?
unless using the additional BUILD_DEPENDS to install the compiler in the jail
and the overrides in /etc/make.conf /usr/local/etc/poudriere.d/make.conf


In case it is useful for others':

My entire /etc/make.conf (now)
# kernel/world stuff
CPUTYPE?=core2
KERNCONF=SANDYBRIDGE
COMPAT4X=yes
COMPAT5X=yes
COMPAT6X=yes
COMPAT7X=yes
MAKE_IDEA=yes
NO_PROFILE=yes
PORTS_MODULES=emulators/virtualbox-ose-kmod

# ports
DEFAULT_VERSIONS= apache=2.4 mysql=5.6 perl5=5.18 php=5.5 ruby=2.0
BATCH=yes
WITH_KMS=yes
WITH_NEW_XORG=yes
WITH_GALLIUM=yes
WITH_OPENSSL_PORT=yes
WITH_PKGNG=yes
WITH_BDB6_PERMITTED=yes
WITH_BDB_VER=6
WITH_SSP=yes
WITH_SSP_PORTS=yes
TESSERACT_LANGS=eng
DISABLE_VULNERABILITIES=yes
NO_IGNORE=1
FAVORITE_COMPILER=gcc
OVERRIDE_LINUX_BASE_PORT=c6
OVERRIDE_LINUX_NONBASE_PORTS=c6

.if ${.CURDIR:M*/www/chromium*}
CC=gcc47
CXX=g++47
CPP=cpp47
.endif

.if ${.CURDIR:M*/graphics/libcdr*}
CC=gcc47
CXX=g++47
CPP=cpp47
.endif

.if ${.CURDIR:M*/x11/kdelibs4*}
# cannot build with clang
CC=gcc
CXX=g++
CPP=cpp
.endif

<EOF>


and /etc/src.conf

WITH_CLANG_FULL=yes
WITH_CLANG_IS_CC=yes
CC=clang
CXX=clang++
CPP=clang-cpp
WITH_ICONV=yes
WITH_IDEA=yes
WITH_SSP=yes
WITH_BDB6_PERMITTED=yes

<EOF>


To keep them in sync with poudriere I link to from /etc
ls -lad /etc/make.conf /etc/src.conf
lrwxr-xr-x  1 root  wheel  36 May 14 23:18 /etc/make.conf -> /usr/local/etc/poudriere.d/make.conf
lrwxr-xr-x  1 root  wheel  35 May 14 23:19 /etc/src.conf -> /usr/local/etc/poudriere.d/src.conf



(In reply to Craig Wiesen from comment #15)
> I ended up reverting back to gcc 4.7 to compile chromium.
> chromium at least now launches and runs, still core dumps on exit though.
> 
> 
> I took a patch found in 
> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=189444
> to allow my /etc/make.conf with overrides to DEFAULT_VERSIONS to work
> correctly and not get bogus /usr/ports/lang/gcc (gcc48) depends pulled in.
> 
> 
> --- /usr/ports/Mk/bsd.gcc.mk.orig	2014-09-20 22:19:32.980350051 -0500
> +++ /usr/ports/Mk/bsd.gcc.mk	2014-09-20 17:02:51.695805244 -0500
> @@ -148,7 +148,7 @@
>  .  if ${OSVERSION} < ${_GCCVERSION_${v}_L} || ${OSVERSION} >
> ${_GCCVERSION_${v}_R} || !exists(/usr/bin/gcc)
>  V:=			${_GCCVERSION_${v}_V:S/.//}
>  _GCC_PORT_DEPENDS:=	gcc${V}
> -.   if ${_USE_GCC} == ${GCC_DEFAULT}
> +.   if ${_USE_GCC} == ${GCC_DEFAULT}  && empty(DEFAULT_VERSIONS:Mgcc=*)
>  _GCC_PORT:=		gcc
>  .   else
>  _GCC_PORT:=		gcc${V}
> 
> 
> 
> 
> 
> 
> /etc/make.conf (relevant parts only)
> 
> DEFAULT_VERSIONS= apache=2.4 gcc=4.9 mysql=5.6 perl5=5.18 php=5.5 ruby=2.0
> BATCH=yes
> MAKE_JOBS_UNSAFE=yes
> # bus error, core dumps - trying 4.7
> # also attempt to shut off stack protection
> .if ${.CURDIR:M*/www/chromium*}
>  USE_GCC=4.7
>  CC=gcc47
>  CXX=g++47
>  CPP=cpp47
>  WITH_SSP=no
>  WITH_SSP_PORTS=no
> .endif
> 
> 
> 
> I duuno if I'd call it fixed, but maybe others can at least get chromium
> running again.
> 
> 
> 
> (In reply to Craig Wiesen from comment #11)
> > I am adding a me too.  Same thing as Rob B.
> > 
> > I have built chromium in poudriere, and from /usr/ports on the host.
> > gcc4.8 and clang 3.4.1.
> > 
> > 
> > I also saw my DEBUG=on version would not run. comment #7.
> > 
> > 
> > 
> > 
> > > uname -a
> > FreeBSD desktop.home.org 9.3-STABLE FreeBSD 9.3-STABLE #0 r271674: Tue Sep
> > 16 13:12:37 CDT 2014    
> > root@desktop.home.org:/usr/obj/usr/src/sys/SANDYBRIDGE  amd64
> > 
> > > gcc48 -v
> > Using built-in specs.
> > COLLECT_GCC=gcc48
> > COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc48/gcc/x86_64-portbld-freebsd9.3/4.
> > 8.3/lto-wrapper
> > Target: x86_64-portbld-freebsd9.3
> > ...
> > Thread model: posix
> > gcc version 4.8.3 (FreeBSD Ports Collection) 
> > 
> > > clang -v
> > FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
> > Target: x86_64-unknown-freebsd9.3
> > Thread model: posix
> > Selected GCC installation: 
> > 
> > 
> > Poudriere version: 3.0.17
> > Host OSVERSION: 903503
> > Jail OSVERSION: 903502
> > 
> > 
> > ===> The following configuration options are available for
> > chromium-37.0.2062.120_2:
> >      CODECS=on: Compile and enable patented codecs like H.264
> >      DEBUG=off: Build with debugging support
> >      GCONF=on: GConf configuration backend support
> >      PULSEAUDIO=on: PulseAudio sound server support
> >      TEST=off: Build and/or run tests
Comment 18 CraigW 2014-09-26 03:09:42 UTC

Forgot, I also added
cat /etc/libmap.conf 

libgcc_s.so.1   gcc47/libgcc_s.so.1
libgomp.so.1    gcc47/libgomp.so.1
libobjc.so.3    gcc47/libobjc.so.2
libssp.so.0     gcc47/libssp.so.0
libstdc++.so.6  gcc47/libstdc++.so.6

To allow the chrome binary to run



(In reply to Craig Wiesen from comment #17)
> I have now also added this so /usr/ports/www/chromium/Makefile
> 
> It seems to help force chromium build in poudriere.
> 
> diff -u Makefile.orig  Makefile
> --- Makefile.orig	2014-09-25 21:44:39.397280194 -0500
> +++ Makefile	2014-09-25 19:59:45.731277514 -0500
> @@ -16,6 +16,7 @@
>  CFLAGS+=	-fno-stack-protector -isystem${LOCALBASE}/include
>  
>  BUILD_DEPENDS=	${LOCALBASE}/bin/gperf:${PORTSDIR}/devel/gperf \
> +		gcc47:${PORTSDIR}/lang/gcc47 \
>  		bash:${PORTSDIR}/shells/bash \
>  		yasm:${PORTSDIR}/devel/yasm \
>  		flock:${PORTSDIR}/sysutils/flock \
> 
> 
> With that, I do not need the patch to /usr/ports/Mk/bsd.gcc
> 
> Poudriere still emits all those scary gcc47 exit status messages and chrome
> still core dumps upon exit.
> 
> 
> I do not understand how poudriere can use non base gcc/clang versions ever?
> unless using the additional BUILD_DEPENDS to install the compiler in the jail
> and the overrides in /etc/make.conf /usr/local/etc/poudriere.d/make.conf
> 
> 
> In case it is useful for others':
> 
> My entire /etc/make.conf (now)
> # kernel/world stuff
> CPUTYPE?=core2
> KERNCONF=SANDYBRIDGE
> COMPAT4X=yes
> COMPAT5X=yes
> COMPAT6X=yes
> COMPAT7X=yes
> MAKE_IDEA=yes
> NO_PROFILE=yes
> PORTS_MODULES=emulators/virtualbox-ose-kmod
> 
> # ports
> DEFAULT_VERSIONS= apache=2.4 mysql=5.6 perl5=5.18 php=5.5 ruby=2.0
> BATCH=yes
> WITH_KMS=yes
> WITH_NEW_XORG=yes
> WITH_GALLIUM=yes
> WITH_OPENSSL_PORT=yes
> WITH_PKGNG=yes
> WITH_BDB6_PERMITTED=yes
> WITH_BDB_VER=6
> WITH_SSP=yes
> WITH_SSP_PORTS=yes
> TESSERACT_LANGS=eng
> DISABLE_VULNERABILITIES=yes
> NO_IGNORE=1
> FAVORITE_COMPILER=gcc
> OVERRIDE_LINUX_BASE_PORT=c6
> OVERRIDE_LINUX_NONBASE_PORTS=c6
> 
> .if ${.CURDIR:M*/www/chromium*}
> CC=gcc47
> CXX=g++47
> CPP=cpp47
> .endif
> 
> .if ${.CURDIR:M*/graphics/libcdr*}
> CC=gcc47
> CXX=g++47
> CPP=cpp47
> .endif
> 
> .if ${.CURDIR:M*/x11/kdelibs4*}
> # cannot build with clang
> CC=gcc
> CXX=g++
> CPP=cpp
> .endif
> 
> <EOF>
> 
> 
> and /etc/src.conf
> 
> WITH_CLANG_FULL=yes
> WITH_CLANG_IS_CC=yes
> CC=clang
> CXX=clang++
> CPP=clang-cpp
> WITH_ICONV=yes
> WITH_IDEA=yes
> WITH_SSP=yes
> WITH_BDB6_PERMITTED=yes
> 
> <EOF>
> 
> 
> To keep them in sync with poudriere I link to from /etc
> ls -lad /etc/make.conf /etc/src.conf
> lrwxr-xr-x  1 root  wheel  36 May 14 23:18 /etc/make.conf ->
> /usr/local/etc/poudriere.d/make.conf
> lrwxr-xr-x  1 root  wheel  35 May 14 23:19 /etc/src.conf ->
> /usr/local/etc/poudriere.d/src.conf
> 
> 
> 
> (In reply to Craig Wiesen from comment #15)
> > I ended up reverting back to gcc 4.7 to compile chromium.
> > chromium at least now launches and runs, still core dumps on exit though.
> > 
> > 
> > I took a patch found in 
> > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=189444
> > to allow my /etc/make.conf with overrides to DEFAULT_VERSIONS to work
> > correctly and not get bogus /usr/ports/lang/gcc (gcc48) depends pulled in.
> > 
> > 
> > --- /usr/ports/Mk/bsd.gcc.mk.orig	2014-09-20 22:19:32.980350051 -0500
> > +++ /usr/ports/Mk/bsd.gcc.mk	2014-09-20 17:02:51.695805244 -0500
> > @@ -148,7 +148,7 @@
> >  .  if ${OSVERSION} < ${_GCCVERSION_${v}_L} || ${OSVERSION} >
> > ${_GCCVERSION_${v}_R} || !exists(/usr/bin/gcc)
> >  V:=			${_GCCVERSION_${v}_V:S/.//}
> >  _GCC_PORT_DEPENDS:=	gcc${V}
> > -.   if ${_USE_GCC} == ${GCC_DEFAULT}
> > +.   if ${_USE_GCC} == ${GCC_DEFAULT}  && empty(DEFAULT_VERSIONS:Mgcc=*)
> >  _GCC_PORT:=		gcc
> >  .   else
> >  _GCC_PORT:=		gcc${V}
> > 
> > 
> > 
> > 
> > 
> > 
> > /etc/make.conf (relevant parts only)
> > 
> > DEFAULT_VERSIONS= apache=2.4 gcc=4.9 mysql=5.6 perl5=5.18 php=5.5 ruby=2.0
> > BATCH=yes
> > MAKE_JOBS_UNSAFE=yes
> > # bus error, core dumps - trying 4.7
> > # also attempt to shut off stack protection
> > .if ${.CURDIR:M*/www/chromium*}
> >  USE_GCC=4.7
> >  CC=gcc47
> >  CXX=g++47
> >  CPP=cpp47
> >  WITH_SSP=no
> >  WITH_SSP_PORTS=no
> > .endif
> > 
> > 
> > 
> > I duuno if I'd call it fixed, but maybe others can at least get chromium
> > running again.
> > 
> > 
> > 
> > (In reply to Craig Wiesen from comment #11)
> > > I am adding a me too.  Same thing as Rob B.
> > > 
> > > I have built chromium in poudriere, and from /usr/ports on the host.
> > > gcc4.8 and clang 3.4.1.
> > > 
> > > 
> > > I also saw my DEBUG=on version would not run. comment #7.
> > > 
> > > 
> > > 
> > > 
> > > > uname -a
> > > FreeBSD desktop.home.org 9.3-STABLE FreeBSD 9.3-STABLE #0 r271674: Tue Sep
> > > 16 13:12:37 CDT 2014    
> > > root@desktop.home.org:/usr/obj/usr/src/sys/SANDYBRIDGE  amd64
> > > 
> > > > gcc48 -v
> > > Using built-in specs.
> > > COLLECT_GCC=gcc48
> > > COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc48/gcc/x86_64-portbld-freebsd9.3/4.
> > > 8.3/lto-wrapper
> > > Target: x86_64-portbld-freebsd9.3
> > > ...
> > > Thread model: posix
> > > gcc version 4.8.3 (FreeBSD Ports Collection) 
> > > 
> > > > clang -v
> > > FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
> > > Target: x86_64-unknown-freebsd9.3
> > > Thread model: posix
> > > Selected GCC installation: 
> > > 
> > > 
> > > Poudriere version: 3.0.17
> > > Host OSVERSION: 903503
> > > Jail OSVERSION: 903502
> > > 
> > > 
> > > ===> The following configuration options are available for
> > > chromium-37.0.2062.120_2:
> > >      CODECS=on: Compile and enable patented codecs like H.264
> > >      DEBUG=off: Build with debugging support
> > >      GCONF=on: GConf configuration backend support
> > >      PULSEAUDIO=on: PulseAudio sound server support
> > >      TEST=off: Build and/or run tests
Comment 19 Lawrence Chen 2014-10-01 19:43:06 UTC
Not sure if this right bug to comment on... (was going to continue on 192928, but this might be more correct.)

The last version of chrome that worked for me was 37.0.2062.94, which was the just before lang/gcc went from 4.7 to 4.8.  Changing rpath (using devel/chrpath) from /usr/local/lib/gcc47 to /usr/local/lib/gcc48, allowed it to continue working.

All the later compiles with gcc 4.8, are the silent exit kind, where its a bus error normally.  Past experience was DEBUG resulted in different kinds of crashes that after a while I found that when I turned it off I had a working version of chromium for a while....

Having poked at libexecinfo in the past (changed a compiler flag) to make it work briefly....does suggest that there's an issue related to compiler being used.  

But, backtrace/getframeaddr failing isn't the real issue, but what happened to result in the attempt to generate a backtrace (guessing its part of chromium's crashreporting that its trying.)

So, since using the DEBUG option seems to create new problems possibly obscuring the actual one...I decided to try adjusting CFLAGS and disabling the strip on install.

in my make.conf:

.if ${.CURDIR:M*/www/chromium}
CFLAGS=-Og -fno-strict-aliasing -pipe
STRIP=  #none
MAKE_ENV+=      DONTSTRIP=yes
STRIP_CMD=      ${TRUE}
.endif

In retrospect, probably should just gone with just '-g', instead of trying out 4.8's new -Og option here.

But, here's the result of that:

Reading symbols from /usr/local/share/chromium/chrome...(no debugging symbols found)...done.
(gdb) r
Starting program: /usr/local/share/chromium/chrome 
[New Thread 814807400 (LWP 103288)]
Xlib:  extension "RANDR" missing on display ":0.0".
[New Thread 814b39400 (LWP 101437)]
[New Thread 814af5000 (LWP 101509)]
[New Thread 814b39800 (LWP 101512)]
[New Thread 814b39c00 (LWP 101519)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 814807400 (LWP 103288)]
0x000000080614b3d0 in getframeaddr () from /usr/local/lib/libexecinfo.so.1
(gdb) where
#0  0x000000080614b3d0 in getframeaddr () from /usr/local/lib/libexecinfo.so.1
#1  0x000000080613ea2a in backtrace () from /usr/local/lib/libexecinfo.so.1
#2  0x0000000000b41f68 in base::debug::StackTrace::StackTrace() ()
#3  0x000000000093134b in BrowserProcessImpl::BrowserProcessImpl(base::SequencedTaskRunner*, base::CommandLine const&) ()
#4  0x000000000078d662 in ChromeBrowserMainParts::PreCreateThreadsImpl() ()
#5  0x000000000078e382 in ChromeBrowserMainParts::PreCreateThreads() ()
#6  0x0000000002835c92 in content::BrowserMainLoop::PreCreateThreads() ()
#7  0x000000000283a664 in base::internal::Invoker<1, base::internal::BindState<base::internal::RunnableAdapter<int (content::BrowserMainLoop::*)()>, int (content::BrowserMainLoop*), void (base::internal::UnretainedWrapper<content::BrowserMainLoop>)>, int (content::BrowserMainLoop*)>::Run(base::internal::BindStateBase*) ()
#8  0x0000000002947a2f in content::StartupTaskRunner::RunAllTasksNow() ()
#9  0x0000000002837965 in content::BrowserMainLoop::CreateStartupTasks() ()
#10 0x000000000283aa94 in content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) ()
#11 0x00000000028354a6 in content::BrowserMain(content::MainFunctionParams const&) ()
#12 0x0000000000b363f2 in content::RunNamedProcessTypeMain(std::string const&, content::MainFunctionParams const&, content::ContentMainDelegate*) ()
#13 0x0000000000b364af in content::ContentMainRunnerImpl::Run() ()
#14 0x0000000000b3554a in content::ContentMain(content::ContentMainParams const&) ()
#15 0x0000000000494fcb in ChromeMain ()
#16 0x0000000000494f8c in main ()

I think I'm going to try using the force gcc47 next.

FreeBSD 9.2-RELEASE-p12 #0: Mon Sep 15 18:46:46 UTC 2014     root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC
Comment 20 Lawrence Chen 2014-10-03 21:03:24 UTC
Created attachment 147945 [details]
bt full

Overrode compiler to gcc47, left rpath to use /usr/local/lib/gcc47.  Compiled with '-g -Wl,--export-dynamic'.  File size is ~2.7G.

FreeBSD 9.2-RELEASE-p12 #0: Mon Sep 15 18:46:46 UTC 2014     root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC
Comment 21 Lawrence Chen 2014-10-03 21:18:02 UTC
Forgot one other odd thing.  /usr/local/share/chromium/chrome installed by the package was corrupt (file only identified it as 'data').  But, the file in the stage directory tested as valid, so I copied that over to test.

I also tried changing rpath to /usr/local/gcc48, no difference.  Going back to last working version....
Comment 22 Rob Belics 2014-10-16 04:12:15 UTC
Another upgrade, another core dump. Unable to use chromium since I first reported this.
Comment 23 gerrit 2014-10-18 08:14:33 UTC
Same here. Both the last v37 and the new v38 just give a bus error and a core dump on my system (the binary version from pkg as well as the ones I compiled from ports):

zsh/2 372 % pkg info|grep chromium
chromium-38.0.2125.101_2       Google web browser based on WebKit

zsh/2 369 % chrome 
Bus error (core dumped)

zsh/2 370 [138] % uname -a
FreeBSD comet.terra.ger 9.3-BETA2 FreeBSD 9.3-BETA2 #0 r267293: Tue Jun 10 10:16:51 CEST 2014     root@comet.terra.ger:/usr/obj/usr/src/sys/COMET  amd64



I'd really like to have chrome running again, I miss it.
Comment 24 gerrit 2014-10-19 08:22:43 UTC
Just tried the latest version, still no joy:

zsh/2 402 % chrome
Bus error (core dumped)
zsh/2 403 % pkg info|grep chromium
chromium-38.0.2125.104         Google web browser based on WebKit
Comment 25 nodmaster 2014-11-04 02:43:59 UTC
Same problem

$ uname -a
FreeBSD RomanBSD 9.3-RELEASE-p3 FreeBSD 9.3-RELEASE-p3 #0: Mon Oct 20 15:08:33 UTC 2014     root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC  amd64  

$ pkg info |grep chromium                                                                                                                    chromium-38.0.2125.111         Google web browser based on WebKit 

$ chrome 
Bus error (core dumped)
Comment 26 CraigW 2014-11-04 04:40:07 UTC
I updated to the latest/recent www/chromium 

head Makefile
# Created by: Florent Thoumie <flz@FreeBSD.org>
# $FreeBSD: head/www/chromium/Makefile 371649 2014-10-28 21:03:30Z rene $

PORTNAME=	chromium
PORTVERSION=	38.0.2125.111





and changed the
Makefile to add -fno-omit-frame-pointer to CFLAGS


diff -u ../chromium.372094/Makefile Makefile
--- ../chromium.372094/Makefile	2014-11-03 00:30:00.023797054 -0600
+++ Makefile	2014-11-03 22:28:28.743818562 -0600
@@ -13,7 +13,7 @@
 LICENSE=	BSD3CLAUSE LGPL21 MPL
 LICENSE_COMB=	multi
 
-CFLAGS+=	-fno-stack-protector -isystem${LOCALBASE}/include
+CFLAGS+=	-fno-omit-frame-pointer -fno-stack-protector -isystem${LOCALBASE}/include
 
 BUILD_DEPENDS=	${LOCALBASE}/bin/gperf:${PORTSDIR}/devel/gperf \
 		bash:${PORTSDIR}/shells/bash \


compiled chromium with gcc4.8 (default) in poudriere.
and it appears to start.


I found this message
https://lists.freebsd.org/pipermail/freebsd-chromium/2014-November/001737.html


referencing a bug in execinfo compile flags, and just tried doing the same.

Any others care to try and see if it helps them?
Comment 27 CraigW 2014-11-04 05:02:16 UTC
(In reply to Craig Wiesen from comment #26)
> I updated to the latest/recent www/chromium 
> 
> head Makefile
> # Created by: Florent Thoumie <flz@FreeBSD.org>
> # $FreeBSD: head/www/chromium/Makefile 371649 2014-10-28 21:03:30Z rene $
> 
> PORTNAME=	chromium
> PORTVERSION=	38.0.2125.111
> 
> 
> 
> 
> 
> and changed the
> Makefile to add -fno-omit-frame-pointer to CFLAGS
> 
> 
> diff -u ../chromium.372094/Makefile Makefile
> --- ../chromium.372094/Makefile	2014-11-03 00:30:00.023797054 -0600
> +++ Makefile	2014-11-03 22:28:28.743818562 -0600
> @@ -13,7 +13,7 @@
>  LICENSE=	BSD3CLAUSE LGPL21 MPL
>  LICENSE_COMB=	multi
>  
> -CFLAGS+=	-fno-stack-protector -isystem${LOCALBASE}/include
> +CFLAGS+=	-fno-omit-frame-pointer -fno-stack-protector
> -isystem${LOCALBASE}/include
>  
>  BUILD_DEPENDS=	${LOCALBASE}/bin/gperf:${PORTSDIR}/devel/gperf \
>  		bash:${PORTSDIR}/shells/bash \
> 
> 
> compiled chromium with gcc4.8 (default) in poudriere.
> and it appears to start.
> 
> 
> I found this message
> https://lists.freebsd.org/pipermail/freebsd-chromium/2014-November/001737.
> html
> 
> 
> referencing a bug in execinfo compile flags, and just tried doing the same.
> 
> Any others care to try and see if it helps them?

from the about screen

Version 38.0.2125.111 (290379) (64-bit)

And the damn thing doesn't drop core on exit!

I think Lawrence Chen led us to a good place.
Comment 28 gerrit 2014-11-04 19:50:43 UTC
I can confirm that adding -fno-omit-frame-pointer to CFLAGS in the Makefile fixes the bus error issue for me, too. Thanks for the hint! Maybe this could be committed to ports?

One issue that remains for me now is that my Java-Plugin (IcedTea) is not found by chrome anymore. I have already checked the link in /usr/local/share/chromium/plugins/ which looks just fine. IcedTea web-plugin is installed and works fine with both firefox and seamonkey. Just chrome does not even list it under plugins. This used to work fine with the last chrome-37 I had running before this bus error issues came up. However, I cannot say yet if I have something misconfigured or if it is chrome to blame.
Craig, does your new chrome run the java plugin?
Comment 29 gerrit 2014-11-04 20:18:58 UTC
I just read that chromium developers dropped the napi for the java plugin... Uh, well, looks like I'll have to look into using firefox or seamonkey again, I have several things I'm using more or less every day that require java. I guess I understand the motivation for dropping napi support, but dropping java support without any alternative is really bad...
Comment 30 CraigW 2014-11-05 01:06:25 UTC
(In reply to gerrit from comment #28)
> I can confirm that adding -fno-omit-frame-pointer to CFLAGS in the Makefile
> fixes the bus error issue for me, too. Thanks for the hint! Maybe this could
> be committed to ports?

Glad to hear it works for you as well.
Anyone else want to confirm it works and harass someone who can commit that fix?


 
> One issue that remains for me now is that my Java-Plugin (IcedTea) is not
> found by chrome anymore. I have already checked the link in
> /usr/local/share/chromium/plugins/ which looks just fine. IcedTea web-plugin
> is installed and works fine with both firefox and seamonkey. Just chrome
> does not even list it under plugins. This used to work fine with the last
> chrome-37 I had running before this bus error issues came up. However, I
> cannot say yet if I have something misconfigured or if it is chrome to blame.
> Craig, does your new chrome run the java plugin?

Mine does not show the plugin either. 

I assume your comment #29 means it will not work.
Comment 31 Hasse 2014-11-05 14:35:59 UTC
Created attachment 149066 [details]
bt full

With gcc -fno-omit-frame-pointer it compiles fine. And it starts and I am able to open webpages by clicking on links and using bookmarks.

I can mark the content of the urlbox in toolbar and delete it. But when I focus the urlbox and touch a singel key - it is Bus error again.

Compiled with gcc48 -g this is the outcome of bt full of the 3.0G coredump.
Comment 32 Hasse 2014-11-05 14:45:20 UTC
The binary was 3.0G with -g
but the coredump was only 194M
Comment 33 Hans Petter Selasky freebsd_committer 2014-11-05 16:41:27 UTC
Hi,

I can confirm that adding "-fno-omit-frame-pointer" fixes the segfault on FreeBSD-9.3-stable amd64 at least.

--HPS
Comment 34 Hans Petter Selasky freebsd_committer 2014-11-05 17:54:06 UTC
Hi again,

After some further testing it looks as if the CFLAGS does not propagate to all source files, because I hit the same fault when trying to run apps from the APP store.

--HPS
Comment 35 Rob Belics 2014-11-05 21:04:04 UTC
The change to the Makefile as shown in Comment #26 makes Chromium work for me on FreeBSD 9.3. It crashes with the following when I try to search from the address bar or the Google search page. However, the http://google.com/ home page, I can search from there.

[30444:406877184:1105/150245:ERROR:content_settings_pref_provider.cc(524)] Invalid pattern strings: ,*
[30444:406877184:1105/150245:ERROR:content_settings_pref_provider.cc(406)] Invalid pattern strings: ,*
[30444:406877184:1105/150245:ERROR:background_mode_manager_aura.cc(14)] Not implemented reached in virtual void BackgroundModeManager::EnableLaunchOnStartup(bool)
[30444:406877184:1105/150245:ERROR:bookmark_model_associator.cc(793)] Bookmarks persistence error was encountered: Native version (2662) does not match sync version (2661)
[30444:411018240:1105/150246:ERROR:get_updates_processor.cc(240)] PostClientToServerMessage() failed during GetUpdates
Bus error (core dumped)
Comment 36 Hans Petter Selasky freebsd_committer 2014-11-05 21:26:51 UTC
The crash searching on the address bar can be avoided by searching the chrome settings for "address" and uncheck all options it returns.

--HPS
Comment 37 Hasse 2014-11-06 11:05:13 UTC
Thans Hans Petter, now chromium-38.0.2125.111 is working here!
Comment 38 robbak 2014-11-06 12:37:13 UTC
(In reply to Hans Petter Selasky from comment #36)
> The crash searching on the address bar can be avoided by searching the
> chrome settings for "address" and uncheck all options it returns.
> 
> --HPS
The exact setting that triggers the problem is "Use a prediction service to help complete searches and URLs typed in the address bar or the app launcher search box"
Comment 39 commit-hook freebsd_committer 2014-11-07 10:52:17 UTC
A commit references this bug:

Author: rene
Date: Fri Nov  7 10:51:34 UTC 2014
New revision: 372253
URL: https://svnweb.freebsd.org/changeset/ports/372253

Log:
  www/chromium:
  - fix crash on startup on systems which do not have libexecinfo in base
    (typically 8.X and 9.X)
  - conditionally bump PORTREVISION

  PR:		ports/193610
  Submitted by:	Rob Belics
  Patch by:	Tomek
  MFH:		2014Q4

Changes:
  head/www/chromium/Makefile
  head/www/chromium/files/extra-patch-fixup-ffmpeg
Comment 40 Hans Petter Selasky freebsd_committer 2014-11-11 21:31:15 UTC
Hi,

Can there be added a "chromium-debug" port into ports, because building this on your own without a lot of memory is a quite daunting task when trying to debug chromium issues.

--HPS
Comment 41 commit-hook freebsd_committer 2014-11-15 21:25:33 UTC
A commit references this bug:

Author: rene
Date: Sat Nov 15 21:25:09 UTC 2014
New revision: 372615
URL: https://svnweb.freebsd.org/changeset/ports/372615

Log:
  MFH: r372253

  www/chromium:
  - fix crash on startup on systems which do not have libexecinfo in base
    (typically 8.X and 9.X)
  - conditionally bump PORTREVISION

  PR:		ports/193610
  Submitted by:	Rob Belics
  Patch by:	Tomek
  Approved by:	ports-secteam (rea)

Changes:
_U  branches/2014Q4/
  branches/2014Q4/www/chromium/Makefile
  branches/2014Q4/www/chromium/files/extra-patch-fixup-ffmpeg
Comment 42 Lawrence Chen 2014-11-21 01:30:44 UTC
Was going to report earlier that I finally have a working chromium again, on system where I had been without any chromium (seems once it starts upgrading your profile you can't go back.) vs system where I had been staying with 35.x

Had stopped here to find out what it was to turn off to stop the address bar crash.  Though the fix isn't 100%.  If I type a single word into the address bar, it'll crash.  So no doing searches of just a single word (though I did install a search extension, maybe I should get in habit of using it more...)

Sad to find that NPAPI is more....as a result, I immediately missed 3 things....java, flash and PDF.  The latter I resolved when I found an extension that does/uses Firefox's HTML5 PDF renderer.  Which however isn't 100%.  I can use it to view PDF statements and such from my credit cards sites.  There's probably a security layer that prevents it from crossing into the extension where NPAPI didn't stop such things.

The other annoyance is that it no longer understands that my desktop is two screens connected by Xinerma...not one big view....where it wants to do as much as possible on the right side.  Include if I don't keep it maximized move most of the window offscreen to the right.....

Had recalled seeing that it had a concept of "work area(s)" vs "display area", with files or sections for various types of systems, hopefully its just a missed defined() check that got missed in recent ports.

Now getting more annoying that can't middle click text in (or out) of forms/addressbar in chromium.  Not uncommon for me to deliberately have different things in the two 'clipboards'.  Perhaps time to investigate using the more advanced features of my clipboard manager (providing it survives the upgrade to gnome3.)

Currently not building it debug...though not stripping it.
Comment 43 Bartek Rutkowski freebsd_committer 2015-11-08 15:50:43 UTC
Closing this PR since www/chromium is currently in version 46.0.2490.80 so it is no longer relevant.