[
https://issues.apache.org/jira/browse/TS-427?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12911004#action_12911004
]
Igor Galić commented on TS-427:
-------------------------------
8175 fixed in llvm r114259
In testing it, I hit, much, much later, a new assert, in gdb:
(gdb) print *d
$29 = {<Continuation> = {<force_VFPT_to_top> = {_vptr$force_VFPT_to_top =
0x7ffff8276af0}, handler = {ptr = <error reading variable>, handler_name =
0x7ffff7f7c490 "&Part::aggWriteDone", mutex = {m_ptr = 0x7ffff8868380},
link = {<SLink<Continuation>> = {next = 0x0}, prev = 0x0}}, path =
0x7ffff88cee80 "/var/opt/trafficserver/cache/cache.db", hash_id =
0x7ffff88ced10 "/var/opt/trafficserver/cache/cache.db 16384:9727", hash_id_md5
= {b = {
6127868384971469622, 16013774615526535559}}, fd = 24, raw_dir =
0x7ffff88d7000 "\r\360\320\361\025", dir = 0x7ffff88d9000, header =
0x7ffff88d7000, footer = 0x7ffff88f3000, segments = 1, buckets = 2482,
recover_pos = 8961024,
prev_recover_pos = 468992, scan_pos = 10532864, skip = 16384, start = 262144,
len = 79683584, data_blocks = 9697, hit_evacuate_window = 0, io =
{<AIOCallback> = {<Continuation> = {<force_VFPT_to_top> = {
_vptr$force_VFPT_to_top = 0x7ffff8276bb0}, handler = {ptr = <error
reading variable>, handler_name = 0x7ffff7f77770
"&AIOCallbackInternal::io_complete", mutex = {m_ptr = 0x7ffff8868380}, link =
{<SLink<Continuation>> = {
next = 0x0}, prev = 0x0}}, aiocb = {aio_fildes = 0, aio_buf =
0x7ffff03be000, aio_nbytes = 103424, aio_offset = 572416, aio_reqprio = 0,
aio_lio_opcode = 2, aio_state = 0, aio__pad = {0}}, action = {_vptr$Action =
0x0,
continuation = 0x7ffff88d56f0, mutex = {m_ptr = 0x7ffff8868380},
cancelled = 0}, thread = 0xffffffffffffffff, then = 0x0, aio_result = 103424},
first = 0x0, aio_req = 0x7fffec02b600, sleep_time = 0}, agg = {<DLL> = {head =
0x0},
tail = 0x0}, stat_cache_vcs = {<DLL> = {head = 0x0}, tail = 0x0}, sync =
{<DLL> = {head = 0x0}, tail = 0x0}, agg_buffer = 0x7ffff03be000
"\023\233\022_\204\206\001", agg_todo_size = 0, agg_buf_pos = 0, trigger = 0x0,
open_dir = {<Continuation> = {<force_VFPT_to_top> = {_vptr$force_VFPT_to_top
= 0x7ffff8276b30}, handler = {ptr = <error reading variable>, handler_name =
0x7ffff7f77d20 "&OpenDir::signal_readers", mutex = {m_ptr = 0x7ffff8868380},
link = {<SLink<Continuation>> = {next = 0x0}, prev = 0x0}},
delayed_readers = {<DLL> = {head = 0x0}, tail = 0x0}, bucket = {{head = 0x0}
<repeats 256 times>}}, ram_cache = 0x7fffeccca250, evacuate_size = 6,
evacuate = 0x7ffff88cee20, lookaside = {{head = 0x0} <repeats 256 times>},
doc_evacuator = 0x7c30f00df00d, init_info = 0x0, disk = 0x7fffec02b4a0, cache =
0x7ffff88ced70, cache_part = 0x7ffff88cea70, last_sync_serial = 4,
last_write_serial = 0, sector_size = 512, recover_wrapped = false,
dir_sync_waiting = false, dir_sync_in_progress = false, writing_end_marker =
false, first_fragment_key = {b = {0, 0}}, first_fragment_offset = 4294993844,
first_fragment_data = {m_ptr = 0x0}}
(gdb) print *thread
$30 = <incomplete type>
(gdb) print lock
$31 = {m = {m_ptr = 0x0}, lock_acquired = false}
(gdb) continue
Continuing.
FATAL: CacheDir.cc:1288: failed assert `lock`
/opt/trafficserver/bin/traffic_server(ink_fatal_va+0x111)[0x7f3aac0a1a31]
/opt/trafficserver/bin/traffic_server(ink_fatal+0x150)[0x7f3aac0a1ba0]
/opt/trafficserver/bin/traffic_server(_ink_assert+0x112)[0x7f3aac0a0c02]
/opt/trafficserver/bin/traffic_server(RegressionTest_Cache_dir(RegressionTest*,
int, int*)+0xde)[0x7f3aac01e61e]
/opt/trafficserver/bin/traffic_server(+0x41d88d)[0x7f3aac0b888d]
/opt/trafficserver/bin/traffic_server(RegressionTest::run_some()+0x124)[0x7f3aac0b8a34]
/opt/trafficserver/bin/traffic_server(RegressionTest::check_status()+0x2f)[0x7f3aac0b8aaf]
/opt/trafficserver/bin/traffic_server(RegressionCont::mainEvent(int,
Event*)+0xd4)[0x7f3aabe2d9d4]
/opt/trafficserver/bin/traffic_server(Continuation::handleEvent(int,
void*)+0x78)[0x7f3aabdd6718]
/opt/trafficserver/bin/traffic_server(EThread::process_event(Event*,
int)+0x171)[0x7f3aac096f91]
/opt/trafficserver/bin/traffic_server(EThread::execute()+0x27f)[0x7f3aac0973ef]
/opt/trafficserver/bin/traffic_server(main+0x1903)[0x7f3aabe278a3]
/lib/libc.so.6(__libc_start_main+0xfe)[0x7f3aa9739d8e]
Program received signal SIGABRT, Aborted.
0x00007ffff55b0ba5 in raise (sig=<value optimized out>) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
64 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
in ../nptl/sysdeps/unix/sysv/linux/raise.c
(gdb)
> 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.3.0
> 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-trunk.clang-trunk.patch, ats.clang.compile.patch,
> ats.clang.patch, ats.clang.patch, ats_clang_stuck.strace
>
>
> 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.