[
https://issues.apache.org/jira/browse/TS-427?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Igor Galić updated TS-427:
--------------------------
Attachment: ats.clang.patch
This is the current state. It compiles and runs.. oh well.. almost:
CC="/opt/bw/bin/clang"; export CC
CXX="/opt/bw/bin/clang++"; export CXX
LD="/opt/bw/bin/clang++"; export LD
CFLAGS="-fPIC -march=core2 -msse4.1 -D_FORTIFY_SOURCE=2"; export CFLAGS
CXXFLAGS="-x c++ -fPIC -march=core2 -msse4.1 -D_FORTIFY_SOURCE=2"; export
CXXFLAGS
LDFLAGS="-Wl,--as-needed -Wl,--warn-common"; export LDFLAGS
"./configure" \
"--enable-layout=opt" \
"--with-user=proxy" \
"--with-group=proxy" \
"--enable-debug"
This will get us through the compile, but when running the regression test, and
port 8080 is busy, we will segfault:
r...@phoenix:~# /opt/trafficserver/bin/traffic_server -R 1
Layout configuration
--prefix = '/opt/trafficserver'
--exec_prefix = '/opt/trafficserver'
--bindir = '/opt/trafficserver/bin'
--sbindir = '/opt/trafficserver/sbin'
--sysconfdir = '/etc/opt/trafficserver'
--datadir = '/opt/trafficserver/share'
--includedir = '/opt/trafficserver/include'
--libdir = '/opt/trafficserver/lib'
--libexecdir = '/opt/trafficserver/libexec'
--localstatedir = '/var/opt/trafficserver'
--sharedstatedir = '/opt/trafficserver'
--runtimedir = '/var/opt/trafficserver/run'
--logdir = '/var/opt/trafficserver/logs'
--mandir = '/opt/trafficserver/man'
--infodir = '/opt/trafficserver/info'
--cachedir = '/var/opt/trafficserver/cache'
[TrafficServer] using root directory '/opt/trafficserver'
[Aug 28 15:15:29.056] {139700967716640} STATUS: opened
/var/opt/trafficserver/logs/diags.log
[Aug 28 15:15:29.235] Server {139700967716640} ERROR: Could not bind or listen
to port 8080 (error: -1)
[Aug 28 15:15:29.237] Server {139700771809040} FATAL: <HttpAccept.cc:98
(mainEvent)> HTTP accept received fatal error: errno = 9
FATAL: UnixUDPNet.cc:295: failed assert `event != NULL`
/opt/trafficserver/bin/traffic_server - STACK TRACE:
/opt/trafficserver/bin/traffic_server(ink_fatal_va+0x111)[0x7f0eaad33711]
/opt/trafficserver/bin/traffic_server(ink_fatal+0x150)[0x7f0eaad33880]
NOTE: Traffic Server received Sig 11: Segmentation fault
/opt/trafficserver/bin/traffic_server - STACK TRACE:
/opt/trafficserver/bin/traffic_server(_ink_assert+0x112)[0x7f0eaad328d2]
/opt/trafficserver/bin/traffic_server(_ZN19UDPReadContinuationD1Ev+0x50)[0x7f0eaad06530]
/opt/trafficserver/bin/traffic_server(_ZN14ClassAllocatorI19UDPReadContinuationE6_protoD2Ev+0x15)[0x7f0eaad0d085]
/opt/trafficserver/bin/traffic_server(+0x1d2e02)[0x7f0eaaae1e02]
/lib/libpthread.so.0(+0xf8f0)[0x7f0ea9e0a8f0]
[0xffffffff]
Segmentation fault (core dumped)
When the port is not busy, it fails a certain test with abort:
[SDK_API_INKContDataGet] INKContDataGet : [TestCase1] <<PASS>> { ok }
FATAL: ./P_CacheInternal.h:617: failed assert `!part || this_ethread() !=
part->mutex->thread_holding`
/opt/trafficserver/bin/traffic_server - STACK TRACE:
/opt/trafficserver/bin/traffic_server(ink_fatal_va+0x111)[0x7f29fdf0a711]
/opt/trafficserver/bin/traffic_server(ink_fatal+0x150)[0x7f29fdf0a880]
/opt/trafficserver/bin/traffic_server(_ink_assert+0x112)[0x7f29fdf098d2]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC8callcontEi+0x8a)[0x7f29fdea43da]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC21openReadStartEarliestEiP5Event+0xe37)[0x7f29fdea1c27]
/opt/trafficserver/bin/traffic_server(_ZN12Continuation11handleEventEiPv+0x78)[0x7f29fdc3bfb8]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC14handleReadDoneEiP5Event+0xc67)[0x7f29fde78557]
/opt/trafficserver/bin/traffic_server(_ZN12Continuation11handleEventEiPv+0x78)[0x7f29fdc3bfb8]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC21openReadStartEarliestEiP5Event+0xd27)[0x7f29fdea1b17]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC18openReadFromWriterEiP5Event+0x1840)[0x7f29fde9efb0]
/opt/trafficserver/bin/traffic_server(_ZN12Continuation11handleEventEiPv+0x78)[0x7f29fdc3bfb8]
/opt/trafficserver/bin/traffic_server(_ZN5Cache9open_readEP12ContinuationP7INK_MD513CacheFragTypePci+0x589)[0x7f29fde9c439]
/opt/trafficserver/bin/traffic_server(_ZN14CacheProcessor9open_readEP12ContinuationP7INK_MD513CacheFragTypePci+0xbc)[0x7f29fdc6131c]
/opt/trafficserver/bin/traffic_server(INKCacheRead+0x1a6)[0x7f29fdc594e6]
/opt/trafficserver/bin/traffic_server(_Z13cache_handlerPv8INKEventS_+0x1679)[0x7f29fdc6d069]
/opt/trafficserver/bin/traffic_server(_ZN15INKContInternal12handle_eventEiPv+0xe5)[0x7f29fdc47bf5]
/opt/trafficserver/bin/traffic_server(_ZN12Continuation11handleEventEiPv+0x78)[0x7f29fdc3bfb8]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC8calluserEi+0xb6)[0x7f29fdea4536]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC13openWriteMainEiP5Event+0x117)[0x7f29fdead867]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC18openWriteWriteDoneEiP5Event+0x609)[0x7f29fdead729]
/opt/trafficserver/bin/traffic_server(_ZN12Continuation11handleEventEiPv+0x78)[0x7f29fdc3bfb8]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC15handleWriteLockEiP5Event+0x16a)[0x7f29fde94dda]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC18do_write_lock_callEv+0xae)[0x7f29fdeb073e]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC13openWriteMainEiP5Event+0x5b6)[0x7f29fdeadd06]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC18openWriteWriteDoneEiP5Event+0x609)[0x7f29fdead729]
/opt/trafficserver/bin/traffic_server(_ZN12Continuation11handleEventEiPv+0x78)[0x7f29fdc3bfb8]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC15handleWriteLockEiP5Event+0x16a)[0x7f29fde94dda]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC18do_write_lock_callEv+0xae)[0x7f29fdeb073e]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC13openWriteMainEiP5Event+0x5b6)[0x7f29fdeadd06]
/opt/trafficserver/bin/traffic_server(_ZN12Continuation11handleEventEiPv+0x78)[0x7f29fdc3bfb8]
/opt/trafficserver/bin/traffic_server(_ZN7CacheVC8callcontEi+0x11c)[0x7f29fdea446c]
/opt/trafficserver/bin/traffic_server(_ZN5Cache10open_writeEP12ContinuationP7INK_MD513CacheFragTypeilPci+0x594)[0x7f29fdeaf454]
/opt/trafficserver/bin/traffic_server(_ZN14CacheProcessor10open_writeEP12ContinuationP7INK_MD513CacheFragTypeiilPci+0x124)[0x7f29fdc61454]
/opt/trafficserver/bin/traffic_server(INKCacheWrite+0x1c9)[0x7f29fdc59709]
/opt/trafficserver/bin/traffic_server(_Z31RegressionTest_SDK_API_INKCacheP14RegressionTestiPi+0x327)[0x7f29fdc6e3b7]
/opt/trafficserver/bin/traffic_server(+0x43b82d)[0x7f29fdf2182d]
/opt/trafficserver/bin/traffic_server(_ZN14RegressionTest3runEPc+0xa5)[0x7f29fdf21755]
/opt/trafficserver/bin/traffic_server(_ZN14RegressionCont9mainEventEiP5Event+0xb8)[0x7f29fdc970f8]
/opt/trafficserver/bin/traffic_server(_ZN12Continuation11handleEventEiPv+0x78)[0x7f29fdc3bfb8]
/opt/trafficserver/bin/traffic_server(_ZN7EThread13process_eventEP5Eventi+0x171)[0x7f29fdefff41]
/opt/trafficserver/bin/traffic_server(_ZN7EThread7executeEv+0x282)[0x7f29fdf003a2]
/opt/trafficserver/bin/traffic_server(main+0x1a0d)[0x7f29fdc90cad]
/lib/libc.so.6(__libc_start_main+0xfd)[0x7f29fb584c4d]
/opt/trafficserver/bin/traffic_server(+0x12f0f9)[0x7f29fdc150f9]
Aborted
I guess I'll have to look into those cases closer.
> Build ATS with clang
> --------------------
>
> Key: TS-427
> URL: https://issues.apache.org/jira/browse/TS-427
> Project: Traffic Server
> Issue Type: Improvement
> Components: Build
> Affects Versions: 2.1.3
> Environment: OS: Any; Clang --version:
> clang version 1.1 (branches/release_27)
> Target: x86_64-pc-linux-gnu
> Thread model: posix
> Reporter: Igor Galić
> Attachments: ats.clang.compile.patch, ats.clang.patch, ats.clang.patch
>
>
> I've started compiling, and cleaning up traffic-server from trunk with clang,
> with this config:
> i.ga...@phoenix ~/Projects/asf/trafficserver (svn)-[trunk:989985] % cat
> config.notnice
> #! /bin/sh
> #
> # Created by configure
> CC="clang"; export CC
> CXX="clang"; export CXX
> CFLAGS="-fPIC -march=core2 -msse4.1 -D_FORTIFY_SOURCE=2"; export CFLAGS
> CXXFLAGS="-fPIC -march=core2 -msse4.1 -D_FORTIFY_SOURCE=2"; export CXXFLAGS
> LDFLAGS="-Wl,--as-needed -Wl,--warn-common"; export LDFLAGS
> "./configure" \
> "--enable-layout=opt" \
> "--with-user=proxy" \
> "--with-group=proxy" \
> "CC=clang" \
> "CFLAGS=-fPIC -march=core2 -msse4.1 -D_FORTIFY_SOURCE=2" \
> "LDFLAGS=-Wl,--as-needed" \
> "CXX=clang" \
> "$@"
> i.ga...@phoenix ~/Projects/asf/trafficserver (svn)-[trunk:989985] %
> Until I hit errors that seemed to include templates.
> I'm uploading the current patch for you to sanity-check and review. If it
> makes sense, I suppose it does a bit of a clean-up.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.