cherokee / webserver

Cherokee Web Server
GNU General Public License v2.0
564 stars 104 forks source link

Segmentation Fault, panic action script was called for PID 13995 #991

Open colelawrence opened 11 years ago

colelawrence commented 11 years ago
Linux raspberrypi 3.6.11+ # 512 PREEMPT Sat Jul 27 19:08:54 BST 2013 armv6l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sun Aug 4 13:02:55 2013 from 192.168.0.5
pi@raspberrypi ~ $ sudo cherokee -r -d --port=80
pi@raspberrypi ~ $ Cherokee feels panic!
The Cherokee 'panic action' script, /usr/local/bin/cherokee-panic,
was called for pid 13995 (/usr/local/sbin/cherokee-worker).

Below is a backtrace for this process generated with gdb, which shows
the state of the program at the time the error occured. You are
encouraged to submit this information as a bug report in the Cherokee
bug traq system: http://bugs.cherokee-project.com

Operating System: Linux raspberrypi 3.6.11+ # 512 PREEMPT Sat Jul 27 19:08:54 BST 2013 armv6l GNU/Linux
Debugger: /usr/bin/gdb

Segmentation fault
PID 13995: received a signal=6
Cherokee feels panic!
The Cherokee 'panic action' script, /usr/local/bin/cherokee-panic,
was called for pid 14009 (/usr/local/sbin/cherokee-worker).

Below is a backtrace for this process generated with gdb, which shows
the state of the program at the time the error occured. You are
encouraged to submit this information as a bug report in the Cherokee
bug traq system: http://bugs.cherokee-project.com

Operating System: Linux raspberrypi 3.6.11+ # 512 PREEMPT Sat Jul 27 19:08:54 BST 2013 armv6l GNU/Linux
Debugger: /usr/bin/gdb

Segmentation fault
PID 14009: received a signal=6
Cherokee feels panic!
The Cherokee 'panic action' script, /usr/local/bin/cherokee-panic,
was called for pid 14023 (/usr/local/sbin/cherokee-worker).

This output has been shortened here because it repeats the same debugger error with a new PID each time. I am working with Raspian soft float and the source was built with the latest stable release as of a couple weeks ago. The latest change was uncommenting the line in pho.ini for php5 to work.

colelawrence commented 11 years ago

It does not seem to be linked to php5 at all. Onve the detach flag was removed from the command and I specified documentroot in the commandm the server started up fine. I would conclude it is a detach flag problem, but based on the error, I would also say that there may be a variety of things that could be causing this.

skinkie commented 11 years ago

I'm quite sure cherokee works flawlessly on a RaspberryPi (I'm shipping as we speak about 2mbit of continous data with it). So more details please. Have you tried the lastest version from git. It compiles in less than 10 minuten on a Pi (including the creation of the documentation).

danielniccoli commented 11 years ago

@ZombieHippie Thanks for cleaning this up.

@skinkie Would the backtrace be more helpful if he would compile with --enable-trace --enable-backtraces? Please let him know.

Also, why do you need to specify the options -r -d --port=80? Wouldn't it be easier to use the init script? And Port 80 is the default port.

colelawrence commented 11 years ago

Here is th status of my Cherokee. Onve I can confirm PHP5 is working I will move onto testing nodejs and then will cleanly build and install everything.

pi@raspberrypi ~ $ cherokee -i
Compilation
 Version: 1.2.103
 Compiled on: Jul 28 2013 21:52:02
 Arguments to configure:  '--enable-nls=no'

Installation
 Deps dir: /usr/local/share/cherokee/deps
 Data dir: /usr/local/share/cherokee
 Icons dir: /usr/local/share/cherokee/icons
 Themes dir: /usr/local/share/cherokee/themes
 Plug-in dir: /usr/local/lib/cherokee
 Temporal dir: /tmp

Plug-ins
 Built-in:

Support
 IPv6: yes
 Pthreads: yes
 Tracing: no
 sendfile(): yes
 syslog(): yes
 Polling methods: epoll poll select
 SSL/TLS: no
 TLS SNI: no

pi@raspberrypi ~ $

Again, I've only had problems with the -d flag.

danielniccoli commented 11 years ago

@skinkie Have you ever tried to detach cherokee using -d on your Raspberry? The init script uses a different method of detaching the process from the console.

skinkie commented 11 years ago

Does it work when you use php5-fpm (which is started externally)?

colelawrence commented 11 years ago

@Borkason I was havimg problems with -r where it would use a different documentroot than specified when using sudo; when not using sudo and binding to port 8080 the documentroot was read from the default configuration file. I may want to retry everything after a chown pi fir all files

skinkie commented 11 years ago

@ZombieHippie try if you can segfault cherokee by starting it in this way:

gdb cherokee-worker [enter] run [enter]

If it segfaults type: bt [enter]

...and copy/paste the output here.

colelawrence commented 11 years ago

I'm sorry guys, I think I "broke" my rasperry using chown -r pi / and I think I need to reinstall. I will get back to you when I get it setup again at home. (It will be easier to report then, because I won't be SSH'ing from my phone)