Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
Icecast-Server
Icecast-Server
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 93
    • Issues 93
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 1
    • Merge Requests 1
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • External Wiki
    • External Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Xiph.Org
  • Icecast-ServerIcecast-Server
  • Issues
  • #2329

Closed
Open
Opened Apr 18, 2018 by Marvin Scholz@ePiratOwner

Config file using url auth causes SIGILL on SIGHUP

Reported by spr0cketeer on 21 Nov 2017 (Github):

Hello icecasters!

Using icecast master cd0a3f9c

getting a SIGILL when sending a SIGHUP to reread config file.

Only happens when using url auth:

<mount>                                                                                                                     
    <mount-name>/test</mount-name>                                                                                            
    <authentication type="url">                                                                                               
        <option name="listener_add" value="http://example.com/auth"/>                                                         
    </authentication>                                                                                                         
</mount>   

Server is running on haswell architecture - related: karlheyes/icecast-kh#157

Thread 1 "icecast" received signal SIGHUP, Hangup.
[2017-11-20  23:02:55] INFO sighandler/_sig_hup Caught signal 1, scheduling config re-read...
[2017-11-20  23:02:55] INFO auth_url/auth_get_url_auth URL based authentication setup
[New Thread 0x7fffeebd4700 (LWP 9495)]
[2017-11-20  23:02:55] INFO auth/auth_run_thread Authentication thread started
[2017-11-20  23:02:55] WARN CONFIG/__check_hostname Warning, <hostname> not configured, using default value "localhost". This will cause problems, e.g. this breaks YP directory listings. YP directory listing support will be disabled.
[2017-11-20  23:02:55] WARN CONFIG/_parse_root Warning, <location> not configured, using default value "Earth".
[2017-11-20  23:02:55] WARN CONFIG/_parse_root Warning, <admin> contact not configured, using default value "icemaster@localhost". This breaks YP directory listings. YP directory support will be disabled.
[2017-11-20  23:02:55] INFO auth/auth_run_thread Authentication thread shutting down
[2017-11-20  23:02:55] INFO auth_url/auth_url_clear Doing auth URL cleanup
[2017-11-20  23:02:55] INFO connection/get_tls_certificate No TLS capability on any configured ports
[Thread 0x7ffff7fba700 (LWP 8767) exited]

Thread 5 "icecast" received signal SIGILL, Illegal instruction.
[Switching to Thread 0x7fffeecd6700 (LWP 8770)]
__GI___pthread_rwlock_unlock (rwlock=rwlock@entry=0x642800 <_locks>) at pthread_rwlock_unlock.c:38
38      pthread_rwlock_unlock.c: No such file or directory.


(gdb) bt
#0  __GI___pthread_rwlock_unlock (rwlock=rwlock@entry=0x642800 <_locks>) at pthread_rwlock_unlock.c:38
#1  0x000000000042ac25 in thread_rwlock_unlock_c (rwlock=rwlock@entry=0x642800 <_locks>, line=line@entry=754, file=file@entry=0x42fe9f "cfgfile.c") at thread.c:568
#2  0x000000000040b66c in config_release_config () at cfgfile.c:754
#3  config_reread_config () at cfgfile.c:701
#4  0x0000000000411025 in _slave_thread (arg=arg@entry=0x0) at slave.c:751
#5  0x000000000042a6cd in _start_routine (arg=0x68d2b0) at thread.c:669
#6  0x00007ffff68546ba in start_thread (arg=0x7fffeecd6700) at pthread_create.c:333
#7  0x00007ffff658a3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109


(gdb) thread apply all bt

Thread 7 (Thread 0x7fffeebd4700 (LWP 9495)):
#0  0x00007ffff685dc1d in nanosleep () at ../sysdeps/unix/syscall-template.S:84
#1  0x000000000042ac86 in thread_sleep (len=len@entry=150000) at thread.c:626
#2  0x000000000042304a in auth_run_thread (arg=arg@entry=0x7fffd800b490) at auth.c:359
#3  0x000000000042a6cd in _start_routine (arg=0x7fffd800bce0) at thread.c:669
#4  0x00007ffff68546ba in start_thread (arg=0x7fffeebd4700) at pthread_create.c:333
#5  0x00007ffff658a3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7fffeec55700 (LWP 8771)):
#0  0x00007ffff685dc1d in nanosleep () at ../sysdeps/unix/syscall-template.S:84
#1  0x000000000042ac86 in thread_sleep (len=len@entry=150000) at thread.c:626
#2  0x0000000000421183 in event_run_thread (arg=arg@entry=0x0) at event.c:174
#3  0x000000000042a6cd in _start_routine (arg=0x68d2b0) at thread.c:669
#4  0x00007ffff68546ba in start_thread (arg=0x7fffeec55700) at pthread_create.c:333
#5  0x00007ffff658a3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7fffeecd6700 (LWP 8770)):
#0  __GI___pthread_rwlock_unlock (rwlock=rwlock@entry=0x642800 <_locks>) at pthread_rwlock_unlock.c:38
#1  0x000000000042ac25 in thread_rwlock_unlock_c (rwlock=rwlock@entry=0x642800 <_locks>, line=line@entry=754, file=file@entry=0x42fe9f "cfgfile.c") at thread.c:568
#2  0x000000000040b66c in config_release_config () at cfgfile.c:754
#3  config_reread_config () at cfgfile.c:701
#4  0x0000000000411025 in _slave_thread (arg=arg@entry=0x0) at slave.c:751
#5  0x000000000042a6cd in _start_routine (arg=0x68d2b0) at thread.c:669
#6  0x00007ffff68546ba in start_thread (arg=0x7fffeecd6700) at pthread_create.c:333
#7  0x00007ffff658a3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7ffff7eb8700 (LWP 8769)):
#0  0x00007ffff685dc1d in nanosleep () at ../sysdeps/unix/syscall-template.S:84
#1  0x000000000042ac86 in thread_sleep (len=len@entry=200000) at thread.c:626
#2  0x0000000000428afd in yp_update_thread (arg=arg@entry=0x0) at yp.c:732
#3  0x000000000042a6cd in _start_routine (arg=0x68d2b0) at thread.c:669
#4  0x00007ffff68546ba in start_thread (arg=0x7ffff7eb8700) at pthread_create.c:333
#5  0x00007ffff658a3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7ffff7f39700 (LWP 8768)):
#0  0x00007ffff685dc1d in nanosleep () at ../sysdeps/unix/syscall-template.S:84
#1  0x000000000042ac86 in thread_sleep (len=len@entry=300000) at thread.c:626
#2  0x000000000041556e in _stats_thread (arg=arg@entry=0x0) at stats.c:737
#3  0x000000000042a6cd in _start_routine (arg=0x68f160) at thread.c:669
#4  0x00007ffff68546ba in start_thread (arg=0x7ffff7f39700) at pthread_create.c:333
#5  0x00007ffff658a3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7ffff7fbc740 (LWP 8763)):
#0  0x00007ffff657e70d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x000000000040c6ee in poll (__timeout=300, __nfds=<optimised out>, __fds=0x7fffffffa450) at /usr/include/x86_64-linux-gnu/bits/poll2.h:46
#2  wait_for_serversock (timeout=300) at connection.c:302
#3  _accept_connection (duration=300) at connection.c:371
#4  connection_accept_loop () at connection.c:616
#5  0x000000000040685a in _server_proc () at main.c:356
#6  main (argc=<optimised out>, argv=<optimised out>) at main.c:601
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: xiph/icecast-server#2329